10–11классЕГЭ по информатике

Задание 19 ЕГЭ по информатике: теория игр

Задания 19, 20 и 21 ЕГЭ по информатике построены на одной игре. В девятнадцатом нужно найти позицию, где Петя делает неудачный первый ход, а Ваня тут же выигрывает. Решается разбором позиций или программой, которая подходит сразу для всех трёх номеров.

Для 10–11 классов. Нумерация по проекту демоверсии ФИПИ на 2027 год.

Условие игры

Два игрока, Петя и Ваня, по очереди делают ходы, первым ходит Петя. Перед ними куча камней. За ход можно добавить в кучу один камень или увеличить число камней в два раза. Игра заканчивается, когда в куче 29 камней или больше. Побеждает тот, кто сделал последний ход. В начале в куче S камней, 1 ≤ S ≤ 28.

Задание 19: известно, что Ваня выиграл своим первым ходом после неудачного первого хода Пети. Укажите минимальное S, при котором это возможно.

Разбор позиций

Выигрышные одним ходом позиции: те, из которых можно сразу получить 29 и больше. Удвоение даёт 2S ≥ 29 при S ≥ 15. Значит, при S от 15 до 28 игрок, который ходит, побеждает одним ходом.

Минимальное S

Найдите минимальное S, при котором Петя может сделать ход в позицию от 15 до 28.

Петя ходит в 15 и больше удвоением при S ≥ 8: 8·2 = 16.

При S = 7 ходы дают 8 и 14, оттуда Ваня одним ходом не выигрывает.

Минимальное S равно 8.

Ответ: 8

Программа для 19–21

def f(s, m): if s >= 29: return m % 2 == 0 if m == 0: return False h = [f(s + 1, m - 1), f(s * 2, m - 1)] return any(h) if (m - 1) % 2 == 0 else all(h)

f(s, m) отвечает, выигрывает ли нужный игрок не более чем за m ходов от позиции s. Для задания 19 ищем S, у которых есть ход в позицию, где следующий игрок побеждает одним ходом:

print(min(s for s in range(1, 29) if any(f(x, 1) for x in (s + 1, s * 2))))

Проверь себя

  • При каких S Петя выигрывает первым ходом? Ответ: от 15 до 28.
  • Есть ли у Пети выигрыш первым ходом при S = 14? Ответ: нет, 28 меньше 29.

Где теряют балл

  • Граница окончания. «29 или больше» и «больше 29» дают разные позиции.
  • Неудачный ход. В задании 19 Петя ошибается, поэтому нужен хотя бы один его ход в выигрышную для Вани позицию, а не все.

Как тренироваться

Продолжение игры: задание 20 и задание 21. Все номера экзамена в статье ЕГЭ по информатике по номерам.

Разберём на занятии

Готовим к ОГЭ и ЕГЭ на живых занятиях в мини-группе до шести человек или один на один, с пробниками в формате экзамена и разбором каждой ошибки.

Первое занятие бесплатное: можно посмотреть формат вместе с ребёнком и решить, подходит ли он.

Частые вопросы

Бывают ли игры с двумя кучами?

Да. Тогда позиция это пара чисел, а ходы применяются к одной из куч. Программа меняется мало: в функцию передаются две переменные.

Сколько баллов?

Один первичный балл.