我们将图论和概率结合起来:
在第一天,构建一套所有可行的解决方案。让我们表示设置为A1 = {a1(1),a1(2),…,a1(n)}的解。
在第二天,您可以再次构建解决方案集A2。
现在,对于A2中的每个元素,您需要检查是否可以从A1的每个元素中达到(给定的x%公差)。如果是这样-
将A2(n)连接到A1(m)。如果无法从A1(m)中的任何节点访问它-您可以删除此节点。
基本上,我们正在建立一个连通的有向无环图。
图中的所有路径均可能。仅当从Am到Am + 1有一条边(从Am的节点到Am + 1的节点)时,您才能找到确切的解决方案。
当然,某些节点出现在比其他节点更多的路径中。每个节点的概率可以根据包含该节点的路径数直接得出。
通过为每个节点分配权重,该权重等于通向该节点的路径数,则无需保留所有历史记录,而仅保留前一天。
另外,看看非负值线性双phantine方程我刚才问过一个问题。接受的答案是枚举每个步骤中所有组合的好方法。



