该示例将更快地工作:我有一些数字(即:2,3和7)并且必须将它们与任何操作(+, - ,*和/)组合,因此我尽可能地接近给定数字
因此,对于目标数字21,它会发现3 x 7是最佳选择。
对于19的目标,它会找到(3 x 7) - 2。
对于16的目标,它会找到(2 x 7)+ 3 = 17(最佳近似值,因为无法计算精确数字)。
如果您知道任何现有算法,我们将非常感谢一些线索; - )
目标号码可以是任意(假设最多100,000),操作数不超过10(你可以只使用它们一次)。
我知道我可以使用强力算法(回溯),取出非法操作(即负数),但我需要在不到一秒左右的时间内完成操作,使用Javascript,看起来不太可行,远离6位数(排列和操作太多)。