【发布时间】:2011-06-05 15:54:10
【问题描述】:
您将如何测试给定集合N 中所有可能的加法组合,以便它们加起来为给定的最终数字?
一个简单的例子:
- 要添加的数字集:
N = {1,5,22,15,0,...} - 想要的结果:
12345
【问题讨论】:
-
维基百科的文章 (en.wikipedia.org/wiki/Subset_sum_problem) 甚至提到这个问题是对 NP 完全问题类的一个很好的介绍。
-
我们可以多次使用原始集合的相同元素吗?例如,如果输入是 {1,2,3,5} 并且目标是 10,那么 5 + 5 = 10 是可接受的解决方案吗?
-
只有一次。如果要重复一个整数,它会显示为一个新元素。
-
stackoverflow.com/a/64380474/585411 展示了如何使用动态编程来避免在生成答案时进行不必要的工作。
标签: algorithm search language-agnostic combinations subset-sum