求精确解或最接近解

Find exact or closest solution

本文关键字:最接近      更新时间:2023-10-16

如何编写一个程序来计算一个由给定数字组成的数学表达式,它的计算结果也是给定的?如果不存在计算出确切结果的表达式,则计算最接近的结果。例子:你会得到一个随机结果:520,你会得到6个随机整数:2,4,1,6,15,44。使用操作数+,-,*,/和6个随机整数,找出给定结果520或最接近520的数字。什么好主意吗?

这是一个NP-hard问题。你应该综合考虑所有的可能性,想出一个解决方案。如果您想要减少时间,您可以尝试找到一种启发式方法来接近可能的解决方案(并减少解决的时间)。然而,这可能不像开发暴力破解方法那么容易。

当输入数量较大时,将花费相当长的时间。

如果你想更进一步,这里有关键字:np, np-complete, np-hard, complexity, heuristic