Троянди#4043

Троянди

0,5 секунди
64 мегабайти
Складна

Валентин вирішив привітати всіх своїх дівчат, подарувавши кожній по жовтій троянді. На найближчому квітковому ринку жовті троянди продають лише два продавці. Кожен з них має необмежену кількість троянд, але продають їх тільки в букетах (тобто можна купити лише певну кількість троянд за раз). У першого продавця можна придбати букет з троянд за євро, а у другого продавця — букет з троянд за євро. Всі значення , , та є додатними цілими числами. Якщо Валентин може придбати більше ніж троянд за меншу суму, ніж купуючи рівно троянд, він купить більше і подарує залишок будь-якій з двох чарівних продавчинь.

Напишіть програму, яка обчислює мінімальну суму грошей в євро, за яку Валентин може купити щонайменше троянд!

Вхідні дані

Вхідний файл містить рівно один рядок. Цей рядок містить п'ять цілих чисел: , , , та ; кожні два послідовні числа розділені одним пробілом. Значення не перевищує 10^{15}, а значення , , та не перевищують 10^5.

Вихідні дані

Вихідний файл повинен містити один рядок з одним натуральним числом — мінімальну суму грошей в євро, за яку Валентин може купити щонайменше троянд. Відомо, що для всіх заданих тестових випадків правильна відповідь не перевищує 10^{18}.

Приклади

Приклад 1

Loading
Loading