Для игры, описанной в предыдущем задании, найдите два таких значения S, при которых у Пети есть выигрышная стратегия, причём Петя не может выиграть за один ход и Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
В ответе запишите числа в порядке возрастания без пробелов и знаков препинаний.
Ответ:
Рассмотрим значение S = 94. Своим первым ходом Петя может получить позиции 95, 104 и 470. Позиции 95 и 470 Пете не подходят, так как при позиции 95 он может не выиграть своим вторым ходом, а при позиции 470 выигрывает Ваня. Петя делает позицию 104, тогда Ваня может получить позиции 105, 114 и 520. Во всех случаях Петя увеличивает в пять раз количество камней и выигрывает своим вторым ходом.
Рассмотрим значение S = 103. Своим первым ходом Петя может получить позиции 104, 113 и 515. Позиции 113 и 515 Пете не подходят, так как Ваня увеличит в пять раз количество каменей и выиграет своим первым ходом. Петя делает позицию 104, тогда Ваня может получить позиции 105, 114 и 520. Во всех случаях Петя увеличивает в пять раз количество камней и выигрывает своим вторым ходом.
Ответ: 94 103.
Приведём другое решение на языке Python.
def f(x, h):
if h == 4 and x >= 525:
return 1
elif h == 4 and x < 525:
return 0
elif x >= 525 and h < 4:
return 0
else:
if h % 2 != 0:
return f(x + 1, h + 1) or f(x + 10, h + 1) or f(x * 5, h + 1) # стратегия победителя
else:
return f(x + 1, h + 1) and f(x + 10, h + 1) and f(x * 5, h + 1) # стратегия проигравшего
for x in range(1, 525):
if f(x, 1) == 1:
print(x)

