如何解决蛮力搜索正确的标量组合
我怀疑三角形区域可以用边长来表示。 (附注:Heron's formula。)给定面积 A
和三个边长 a
、b
、c
,我想通过“ a
、b
、c
的组合”,直到它匹配 A
,其中“组合”是一组预定义的操作,例如 sqrt
、*
、+
、**
等
import math
tol = 1.0e-10
t = a + b + c
if abs(A - t) < tol:
print("got it!") # no
t = a ** 2
if abs(A - t) < tol:
print("got it!") # no
t = math.sqrt(a ** 2 + b)
if abs(A - t) < tol:
print("got it!") # no
# ...
t = 0.25 * math.sqrt((a+b+c) * (-a+b+c) * (a-b+c) * (a+b-c))
if abs(A - t) < tol:
print("got it!") # YES
从某种意义上说,我想列举所有可能的公式,从简单到复杂,并尝试一下。
我该如何编写脚本?或许 sympy 或 mpmath 在这里有辅助函数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。