我有一个数字列表,例如
numbers = [1, 2, 3, 7, 7, 9, 10]
Run Code Online (Sandbox Code Playgroud)
如您所见,数字可能会在此列表中出现多次.
我需要获得具有给定总和的这些数字的所有组合,例如10.
组合中的项目可以不重复,但是每个项目numbers必须被唯一地处理,这意味着例如7列表中的两个项目表示具有相同值的不同项目.
顺序是不重要的,所以[1, 9]和[9, 1]是相同的组合.
组合没有长度限制,[10]有效[1, 2, 7].
如何创建符合上述条件的所有组合的列表?
在这个例子中,它将是 [[1,2,7], [1,2,7], [1,9], [3,7], [3,7], [10]]