решай.ai · шпаргалка
Задание 20: Выигрышная стратегия. Задание 2
ЕГЭ Информатика
Как выглядит
Типичная формулировка: два игрока по очереди изменяют кучу камней — добавляют определённое число камней или умножают кучу на константу. Игра завершается, когда куча становится не менее . Победил тот, кто сделал последний ход. Задано, что . Нужно найти все значения , при которых первый игрок (обычно Петя) имеет выигрышную стратегию, причём одновременно:
- он не может выиграть за один ход;
- он гарантированно выигрывает своим вторым ходом, независимо от игры второго игрока (Вани).
…
Что нужно знать
- Позиция — состояние игры, то есть количество камней в куче (для одной кучи) или пара чисел (для двух куч).
- Выигрышная позиция (В) — позиция, из которой игрок, делающий ход, может гарантированно довести игру до победы при любых ответах соперника.
- Проигрышная позиция (Л) — позиция, из которой любой ход ведёт в выигрышную позицию для соперника.
- Ход: если разрешены операции «добавить », «добавить », «умножить на », то из позиции достижимы позиции .
- Условие завершения игры: игра заканчивается, когда позиция ; сделавший такой ход побеждает.
- Множество — позиции, из которых можно выиграть одним ходом:
- Множество — позиции, из которых игрок гарантированно выигрывает своим вторым ходом. Это те , для которых все возможные ходы соперника переводят игру в позицию из , и при этом ни один ход соперника не завершает игру раньше времени:
- Общий принцип: строится через по той же логике — обратная индукция от конца игры.
Алгоритм
- Выпишите порог и разрешённые операции (например, , , ).
- Постройте множество : решите неравенства , , и объедините решения — это позиции, из которых можно выиграть одним ходом.
- Найдите дополнение к на отрезке — назовём его «не-». Это позиции, из которых первым ходом победить нельзя.
- Постройте множество : среди чисел не- найдите такие , что все три результата ходов из (, , ) одновременно строго меньше и принадлежат . Обязательно проверяйте оба условия — если хотя бы один ход соперника заканчивает игру (), такое не подходит, потому что тогда выиграет соперник, а не наш игрок. …
Ловушки
- Забывают проверить, что ход соперника не завершает игру досрочно. Если хотя бы один из ходов из даёт результат , соперник сам выиграет этим ходом — такое нельзя включать в , даже если оставшиеся ходы формально попадают в .
- Путают «существует ход» и «все ходы». Для достаточно существования хотя бы одного выигрывающего хода. Для требуется, чтобы абсолютно все ходы соперника вели в — здесь нельзя ослаблять условие.
- Не проверяют целочисленность и границы. При решении уравнений вида важно убирать нецелые и выходящие за диапазон решения.
- Путают порядок операций умножения и сложения при построении . Умножение обычно расширяет множество сильнее сложения — стоит явно решить неравенство для каждой операции отдельно и объединить результаты. …
reshay.ai/ege/informatika/zadanie-20 — задачи с разборами и тренажёр