Задача C: Игра
Петя и Маша решили сыграть в игру. Изначально у Пети и Маши N и M яблок соответственно. Первым ходом Петя передает одно яблоко Маше. На второй ход Маша отдает Пете 2 яблока. Далее Петя передает Маше 3 яблока, и игра продолжается до тех пор, пока у одного из игроков не заканчиваются яблоки. Формально, на шаге i + 1 получатель яблок из шага i передает второму игроку число яблок, равное переданному числу яблок на шаге i и еще одно.
Напишите программу, которая по заданным N и M вычислит через сколько шагов игра Пети и Маши закончится.
Формат входных данных
В первой строке подается число N (1 ≤ N ≤ 106) — начальное число яблок у Пети. Во второй строке подается число M (1 ≤ N ≤ 106) — начальное число яблок у Маши.
Формат результата
Выведите одно число — количество ходов, через которое закончится игра.
Примеры
Входные данные
1
1
Результат работы
1
Входные данные
2
3
Результат работы
3
Примечания
В первом примере игра закончится после того, как Петя передаст 1 яблоко Маше и у него останется 0 яблок.
Во втором примере рассмотрим последовательность ходов:
После первого хода: у Пети — 1 яблоко, у Маши — 4.
После второго: у Пети — 3 яблока, у Маши — 2.
После третьего: у Пети — 0 яблок, у Маши — 5.
Игра на этом заканчивается, так как у Пети больше не осталось яблок.
Петя и Маша решили сыграть в игру. Изначально у Пети и Маши N и M яблок соответственно. Первым ходом Петя передает одно яблоко Маше. На второй ход Маша отдает Пете 2 яблока. Далее Петя передает Маше 3 яблока, и игра продолжается до тех пор, пока у одного из игроков не заканчиваются яблоки. Формально, на шаге i + 1 получатель яблок из шага i передает второму игроку число яблок, равное переданному числу яблок на шаге i и еще одно.
Напишите программу, которая по заданным N и M вычислит через сколько шагов игра Пети и Маши закончится.
Формат входных данных
В первой строке подается число N (1 ≤ N ≤ 106) — начальное число яблок у Пети. Во второй строке подается число M (1 ≤ N ≤ 106) — начальное число яблок у Маши.
Формат результата
Выведите одно число — количество ходов, через которое закончится игра.
Примеры
Входные данные
1
1
Результат работы
1
Входные данные
2
3
Результат работы
3
Примечания
В первом примере игра закончится после того, как Петя передаст 1 яблоко Маше и у него останется 0 яблок.
Во втором примере рассмотрим последовательность ходов:
После первого хода: у Пети — 1 яблоко, у Маши — 4.
После второго: у Пети — 3 яблока, у Маши — 2.
После третьего: у Пети — 0 яблок, у Маши — 5.
Игра на этом заканчивается, так как у Пети больше не осталось яблок.
Ответ
4
(4 оценки)
2
korsa351
1 год назад
Светило науки - 179 ответов - 0 раз оказано помощи
Python 3.x
n = int(input())
m = int(input())
apple = 0
while n != 0 and m != 0:
apple += 1
if apple % 2 != 0:
m += apple
n -= apple
else:
n += apple
m -= apple
print(apple)

помогите пожалуйста с моим вопросом в профиле. взамен "пролайкаю" несколько ваших ответов. паскаль абс нет