Для игры, описанной в задании 19, найдите два минимальных значения S, при которых у Пети есть выигрышная стратегия, причём одновременно выполняются два условия:
— Петя не может выиграть за один ход;
— Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
Найденные значения запишите в ответе в порядке возрастания без разделительных знаков.
Приведём решение на языке Python.
def Win(n, m):
return 0 if m <= 21 else any([Lose(n-1, m-3), Lose(n-1, m-7), Lose(n-1, m//4)])
def Lose(n, m):
return 1 if m <= 21 else 0 if not n else\
all([Win(n-1, m-3), Win(n-1, m-7), Win(n-1, m//4)])
print('20)', *[m for m in range(22, 100) if not Win(1, m) and Win(3, m)][:2])
Ответ:91 92.

