def variants(summ, minvalue, valuelist): if (summ == 0): print(valuelist) if (minvalue == 100) and (summ >= 100): variants(summ - 100, 100, valuelist + [100]) if (minvalue >= 50) and (summ >= 50): variants(summ - 50, 50, valuelist + [50]) if (summ >= 20): variants(summ - 20, 20, valuelist + [20]) variants(200, 100, [])
Standard input is empty
[100, 100] [100, 50, 50] [100, 20, 20, 20, 20, 20] [50, 50, 50, 50] [50, 50, 20, 20, 20, 20, 20] [20, 20, 20, 20, 20, 20, 20, 20, 20, 20]