1453: Переливання води

Переглянути як PDF

Надіслати розвʼязок

Бали: 15,00 (частково)
Ліміт часу: 1.0s
Ліміт памʼяті: 64M

Автор:
Тип задачі
Дозволені мови
Assembly, Awk, Brain****, C, C++, Java, mono C#, Pascal, Perl, Python, Sed, Text, vb

Є двi посудини: в одну посудину помiщається ~a~ лiтрiв води, а в другу - ~b~ лiтрiв. Визначити мінімальну кількість кроків, необхідних для того, щоб в одній з посудин отримати ~c~ літрів води.

На початку обидві посудини порожні. Наступні операції вважаються "кроками":

  • спорожнення посудини,

  • заповнення посудини,

  • налити воду з однієї посудини в іншу, не розливаючи, поки одна з посудин не буде повна або порожня.

Формат вхідних даних

В окремих рядках мiстяться натуральнi числа ~a~, ~b~, ~c~ не бiльшi за 40000

Формат вихідних даних

Вивести мінімальну кількість кроків щоб отримати ~c~ літрів води або -1, якщо це неможливо

Приклад вхідних даних

5
2
3

Приклад вихідних даних

2

Приклад вхідних даних

2
3
4

Приклад вихідних даних

-1

Коментарі

Будь ласка, прочитайте правила перед коментуванням.


Наразі коментарів немає.