【发布时间】:2021-03-14 10:29:17
【问题描述】:
如何使用javascript在给定数量的堆中获取所有可能的术语变化以求和? 假设我的总和为 10,我想将其分成 4 堆,其中只有正项和零。
function getCombinations(sum, piles){
...
}
getCombinations(10,4);
在二维数组中返回类似的东西:
[
[3,3,3,1],
[3,3,1,3],
[7,1,1,1],
[10,0,0,0],
...
]
返回 [3,3,3,1] 和 [3,3,1,3] 作为不同的解决方案不是强制性的,最快的方法就可以了。我只会处理小数字,最大总和可能是 10。
这是计数硬币问题http://rosettacode.org/wiki/Count_the_coins 的变体,但我希望返回解决方案,我有一组给定的堆,我使用所有正项(和零),而不仅仅是特定的硬币值。
【问题讨论】: