C#给定n个数字的数组。确定所有可能构成相同总和的情况

时间:2019-03-05 14:15:34

标签: algorithm

我遇到这样的问题。

给您一个由n个整数组成的数组(包括负数和正数),例如a,b,c,d,e,f,...您必须找到满足以下条件的所有可能组合:

1/ set A (from n array above) of k items making a sum of X
2/ set B of (n-k) items remaining also making a sum of X too
3/ set A and B not overlap (which items have been used in this set will not belongs to the remaining set)
4/ Not required all items in n array all shown in set A, set B

例如:您拥有数组1,2,3,4,5

您将拥有类似的解决方案

1/ 1 + 2 = 3
2/ 1 + 3 = 4
3/ 2 + 3 = 5
4/ 1 + 5 = 4 + 2
5/ 3 + 4 = 5 + 2

这里有人知道这个问题的算法名称吗?我想我不是第一个这样做的人,我想某个地方有一个著名的算法,但是我无法描述使用它的权利。

谢谢。

0 个答案:

没有答案