Для игры, описанной в задании 19, найдите два наименьших значения S, при которых Петя не может выиграть первым ходом, но у Пети есть выигрышная стратегия, позволяющая ему выиграть вторым ходом при любой игре Вани. В ответе запишите найденные значения в порядке возрастания.
Приведём решение на языке Python.
def f(x,k,v):
if x <= 19:
return k in v
if k >= max(v):
return 0
h = [f(x-1,k+1,v)]
if x % 3 == 0:
h.append(f(x//3,k+1,v))
else:
h.append(f(x-2,k+1,v))
if x % 5 == 0:
h.append(f(x//5,k+1,v))
else:
h.append(f(x-3,k+1,v))
if k%2 != max(v) % 2:
return any(h)
else:
return all(h)
for x in range (19,1000):
if f(x,0,[1,3]) == 1 and f(x,0,[1]) == 0:
print('Задание 20:',x)
Ответ: 26&69.

