У меня есть список номеров, например.Найти все комбинации номеров чисел с заданной суммой
numbers = [1, 2, 3, 7, 7, 9, 10]
Как вы можете видеть, цифры могут появляться более одного раза в этом списке.
Мне нужно получить все комбинации этих чисел, которые имеют заданную сумму, например. 10
.
Элементы в комбинациях могут не повторяться, но каждый элемент в numbers
должен обрабатываться однозначно, что означает, например, два 7
в списке представляют разные элементы с одинаковым значением.
Заказ не имеет значения, так что [1, 9]
и [9, 1]
такие же комбинации.
Ограничений на длину для комбинаций не существует, [10]
действителен как [1, 2, 7]
.
Как создать список всех комбинаций, соответствующих вышеуказанным критериям?
В этом примере было бы [[1,2,7], [1,2,7], [1,9], [3,7], [3,7], [10]]