Codeforces Round 188 (Div. 1) |
---|
Закончено |
Назовем пару целых чисел m-превосходной, если хотя бы одно из них по своей величине не меньше заданного целого числа m. Так, пары (3, 3) и (0, 2) являются 2-превосходными, а пара (-1, 1) — нет.
На доске выписано два целых числа x, y. Разрешается стереть с доски одно из чисел и записать вместо него их сумму (x + y).
Какое минимальное количество таких действий потребуется, чтобы сделать заданную пару целых чисел m-превосходной?
Единственная строка входных данных содержит три целых числа x, y и m ( - 1018 ≤ x, y, m ≤ 1018).
Пожалуйста, не используйте спецификатор %lld для чтения или записи 64-х битных чисел на С++. Рекомендуется использовать потоки cin, cout или спецификатор %I64d).
Выведите минимальное количество операций или «-1» (без кавычек), если сделать заданную пару m-превосходной невозможно.
1 2 5
2
-1 4 15
4
0 -1 5
-1
В первом примере подходит следующая последовательность действий: (1, 2) (3, 2) (5, 2).
Во втором примере: (-1, 4) (3, 4) (7, 4) (11, 4) (15, 4).
Наконец, в третьем примере числа x, y не получится сделать положительными, поэтому подходящей последовательности не существует.
Название |
---|