ЕГЭ по информатике - на 101 балл!

Задача типа #21: Стратегия игр

21

Стратегия игр

ФИПИ Средняя сложность 01.09.2025 id: 121012

Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя.
За один ход игрок может:

  • убрать из кучи 3 камня;
  • убрать из кучи 5 камней;
  • уменьшить количество камней в куче в 4 раза (количество камней, полученное при делении, округляется до меньшего). Например, из кучи в 20 камней за один ход можно получить кучу из 17, 15 или 5 камней.
    Игра завершается, когда количество камней в куче становится не более 30. Победителем считается игрок, сделавший последний ход, то есть первым получивший кучу из 30 или менее камней. В начальный момент в куче было S камней, S ≥ 31.
    Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника.

Найдите минимальное значение S, прикотором одновременно выполняются два условия:

  • у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
  • у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.
Ответ: 132
Алгоритм решения: Создадим в Python рекурсивную функцию для перебора всех возможных ходов. Переберём все (до разумного предела) значения начального количества камней с вызовом созданной функции.
Возможно другое решение.

Посмотреть решение задачи (код на Python) в Telegram боте по ID задачи 121012

Другие задачи типа #21: Стратегия игр