Дни олимпиады Мегаполисов пролетели быстро, и вот участник Андрей уже в аэропорту. После пребывания в Москве у него осталось $$$n$$$ рублей. Андрей хочет обменять их на купюры долларов или евро в любой комбинации (то есть, можно покупать одновременно и доллары, и евро). За один доллар придется отдать $$$d$$$ рублей, а за один евро — $$$e$$$ рублей.
Напомним, что долларовые купюры имеют номиналы $$$1$$$, $$$2$$$, $$$5$$$, $$$10$$$, $$$20$$$, $$$50$$$, $$$100$$$, а купюры евро — $$$5$$$, $$$10$$$, $$$20$$$, $$$50$$$, $$$100$$$, $$$200$$$ (купюры номиналом в $$$500$$$ евро в задаче отсутствуют, их тяжело найти в обменниках). Андрей может купить любой набор любых купюр. Он хочет сделать так, чтобы рублей у него осталось как можно меньше.
Помогите ему это сделать — напишите программу, которая по значениям $$$n$$$, $$$e$$$ и $$$d$$$ определит, какое минимальное число рублей может остаться у Андрея после оптимального обмена валюты.
В первой строке входных данных находится целое число $$$n$$$ ($$$1 \leq n \leq 10^8$$$) — количество рублей у Андрея.
Во второй строке находится целое число $$$d$$$ ($$$30 \leq d \leq 100$$$) — стоимость одного доллара в рублях.
В третьей строке находится целое число $$$e$$$ ($$$30 \leq e \leq 100$$$) — стоимость одного евро в рублях.
Выведите одно целое число — минимальную сумму в рублях, которая может остаться у Андрея после оптимального обмена.
100 60 70
40
410 55 70
5
600 60 70
0
В первом примере можно купить только $$$1$$$ доллар, потому что купюры в $$$1$$$ евро не существует.
Во втором примере оптимально купить $$$5$$$ евро и $$$1$$$ доллар.
В третьем примере можно купить одну $$$10$$$-долларовую купюру.
Название |
---|