Я пытаюсь вывести список списков со всеми возможными комбинациями сдачи с учетом суммы и монет. Например, учитывая количество 6 и монеты = [1,5,10], я бы получил:
[[1,1,1,1,1,1],
[1,5],
[5,1]]
Я написал что-то, что выводит правильное решение, но я не могу понять, как заставить функцию выводить решения в виде списка списков
def possible_change(n,p=[],coins = [1,5,10]):
if n == 0:
print(p)
return p
else:
for c in coins:
if n - c >= 0:
possible_change(n-c,p+[c],coins=coins)
possible_change(6,coins=[1,5,10])
Как мне заставить функцию возвращать фактические списки?