стереть
Класс
8 9 10 11
Нужно авторизоваться
Нужно авторизоваться
Нужно авторизоваться
Нет аккаунта?
При наличии аккаунта на платформе можно
Введите больше 6 символов
Проблемы со входом?
Введи последние 4 цифры номера, с которого
поступит звонок. Трубку брать не нужно.
Повторный звонок через
сек.
Добро пожаловать!
Зарегистрируйся и получи Демо мастер-группы на 10 дней по любимым предметам бесплатно.
Добро пожаловать!
Как тебя зовут?
Введите не меньше 2 символов
Привяжем номер телефона
Введите не меньше 2 символов
Привяжем номер телефона
Повторный звонок через
30 сек.
Теперь нужно подтвердить номер - введи последние 4 цифры номера, с которого поступит звонок. Трубку брать не нужно
Введите не меньше 2 символов
Придумаем пароль
Почти закончили! Теперь нужно создать надежный пароль
Введите не меньше 2 символов
Немного о тебе
В какой класс ты переходишь?
Укажи, какие предметы будешь или хочешь сдавать
Введите не меньше 2 символов
На почту 12345@mail.ru отправлена ссылка для сброса пароля.
OK
Информатика

Задача по теме: "Теория игр (Задания 21)"

Информатика
Задание 21 Теория игр (Задания 21)
Подсказка
За подсказку ты получишь лишь половину баллов
Использовать
Автор
Крылов С.С., Чуркина Т.Е. Информатика: единый государственный экзамен. — Москва: Издательство "Национальное образование", 2024. — 256 с. Материалы публикуются в учебных целях
Просмотры
108
banner-img

69. Теория игр Одна куча

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

Победителем считается игрок, сделавший последний ход, т.е. первым получившийкучу, состоящую из 205 или более камней.

В начальный момент в куче было S камней; 1 <= S <= 204.

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

    - у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;

    - у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.

Если найдено несколько значений S, в ответе запишите наименьшее из них.

loading
Решение
single-task__solution-banner

Решение:

Решим задание через Excel:

Построим таблицу всевозможных ходов Пети и Вани и настроим условное форматирование для наглядности. Нам нужно, чтобы Ваня не выигрывал своим первым ходом гарантировано (но он может выиграть первым ходом), но и не давал выиграть первым или вторым ходом Пете.

Подробное решение представлено в файле.



Решим задачу с помощью программы на языке программирования Python:

def game(s, m):
    if s >= 205: return m%2==0
    if m == 0: return 0
    steps = [game(s+5,m-1), game(s+1,m-1), game(s*4,m-1)]
    return any(steps) if m%2!=0 else all(steps)

print('21 задача:', [x for x in range(1,105) if not game(x,2) and game(x,4)])

 

Данный код решает задачу, используя рекурсивную функцию game(), которая проверяет различные комбинации ходов в игре. Функция game() принимает текущий счет игры s и количество оставшихся ходов m. Если текущий счет s больше или равен 205, функция возвращает True, если m является четным числом, иначе возвращает False. Если количество оставшихся ходов m равно 0, функция возвращает 0. В остальных случаях функция рекурсивно вызывает себя для трех возможных ходов и уменьшает количество оставшихся ходов на 1. Затем функция возвращает True, если хотя бы один из ходов возвращает True (если m нечетное) или если все ходы возвращают True (если m четное). 




Ответ: 45

На экзамене это задание принесло бы тебе 2/2 баллов.
Решать еще

Сообщение об ошибке

Расскажите, в каком месте допущена ошибка, мы как можно быстрее её исправим. Спасибо за обратную связь!

Здравствуйте!

Выберите информацию о себе ниже

pay-success-img

Оплата прошла успешно!

pay-un-success-img

Оплата не прошла

Попробуйте снова