В данной задаче мы будем определять те позиции (значения S), с которых Ваня может выиграть, сделав первый ход, независимо от действий Пети.
Для того чтобы определить такие позиции, следует рассматривать конечные позиции, начиная с 34, где выигрывает текущий игрок. Все позиции ниже 34 будут оцениваться исходя из возможностей игроков.
Основной принцип:
- Если игрок делает ход, который переводит игру в позицию, где противнику не удастся выиграть, то текущий игрок в выигрышной позиции.
- Позиция считается проигрышной, если после текущего хода противник в ту же очередь получит возможность сделать ход и выиграть.
Рассмотрим все возможные случаи:
- Если S = 34 (в выигрыше тот, кто играет, так как и при любом ходе он получает >= 34).
- Если S = 33 - Петя ставит >34 и выигрывает.
- Если S = 32, Петя может сделать 3 (снова получает 34) – выигрыш.
- Если S = 31, Петя может сделать 3 до 34 или 2 до 33 – выигрыш.
- Если S = 30, Петя делает 3 до 33 и не может выиграть.
- Если S = 29, Петя может сделать 3 до 32 – проигрыш.
- Если S = 28, игрок может увеличивать кучу до 29 (Петя тоже сможет 32) – выигрыш для Пети.
- Если S = 27, Петя не может сделать (может 3 до 30) – позиция выигрыша Вани.
- Если S = 26, проигрыш Петя (сделает 29 или 27 позиций) - выигрыш.
- Если S = 25, Петя добавляет к 27– 30 - выигрыш Вани.
- Если S = 24, Ваня снова в проигрышной позиции.
- Если S = 23, выигрыш Вани.
- Если S = 22, Петя в проигрышной позиции.
- Если S = 21, проигрыш.
- Если S = 20, выигрыш.
- Если S = 19, проигрыш.
- Если S = 18, выигрывает Петя.
- Если S = 17, проигрыш.
- Если S = 16, выигрывает.
- Если S = 15, проигрыш.
- Если S = 14, выигрывает.
- Если S = 13, проигрыш.
- Если S = 12, выигрывает.
- Если S = 11, проигрыш.
- Если S = 10, выигрывает.
- Если S = 9, проигрыш.
- Если S = 8, выигрывает.
- Если S = 7, проигрыш.
- Если S = 6, выигрывает.
- Если S = 5, проигрыш.
- Если S = 4, выигрывает.
- Если S = 3, проигрыш.
- Если S = 2, выигрывает.
- Если S = 1, проигрыш.
Таким образом, Ваня выигрывает при следующих исходных значениях S:
Решение: S = 30. Ваня делает выигрышный ход.
