Билеты на метро
Давным-давно цены на билеты в московском метро были такими:
1 поездка — 15 рублей,
5 поездок — 70 рублей,
10 поездок — 125 рублей,
20 поездок — 230 рублей,
60 поездок — 440 рублей.
Пассажир планирует совершить n поездок. Определите, сколько билетов каждого вида он должен приобрести, чтобы суммарное количество оплаченных поездок было не меньше n, а общая стоимость приобретенных билетов — минимальна.
Входные данные
Программа получает на вход одно натуральное число n, не превосходящее 10000.
Выходные данные
Программа должна вывести пять целых чисел: количество билетов на 1,5,10,20,60 поездок, которое необходимо приобрести. Если для какого-то данного n существует несколько приобретения билетов одинаковой суммарной стоимости, необходимо вывести ту комбинацию билетов, которая дает большее число поездок.
Есть такая задача, можите надо написать на python 3, что с моей не так, при n=59 выдаёт неправильный ответ:
n=int(input())
if n%60==0:
e=n//60
else:
e=n//60
if (n-e*60)%20==0:
d=(n-e*60)//20
else:
d=(n-e*60)//20
if (n-e*60-d*20)%10==0:
c=(n-e*60-d*20)//10
else:
c=(n-e*60-d*20)//10
if (n-e*60-d*20-c*10)%5==0:
b=(n-e*60-d*20-c*10)//5
else:
b=(n-e*60-d*20-c*10)//5
a=(n-e*60-d*20-c*10-b*5)//1
print(a,b,c,d,e)
Программа.