Задача
Ириска весит X грамм, мандарин – Y грамм, пряник – Z грамм.
Требуется написать программу, которая определит, сколько различных вариантов подарков весом ровно W грамм может сделать Дед Мороз.
Входные данные
В единственной строке входного файла INPUT.TXT содержится четыре целых числа X, Y, Z и W (1 ≤ X, Y, Z ≤ 100, 1 ≤ W ≤ 1000).
Выходные данные
Выходной файл OUTPUT.TXT должен содержать одно целое число – количество вариантов подарков.
with open('data317.txt') as f:
a, h, z, n = [int(x) for x in next(f).split()] # read first line
print(a, h, z, n)
edge = max(a, h, z)
zero = 0
w = open("output.txt", "w")
if n != 0:
def f(n, edge):
#print("f", n)
if n == 0: return 1
if n < 0:
return 0
count = 0
if edge >= a:
count = f(n - a, a)
if edge >= h:
count = count + f(n - h, h)
if edge >= z:
count = count + f(n - z, z)
return count
print(f(n, edge))
w.write(str(f(n, edge)))
else:
w.write(str(0))
w.close()
Не проходит тестирование, при этом вроде бы определяет верно
Источник:
https://acmp.ru/index.asp?main=task&id_task=317