Задание №4375. Для игры, описанной в задании 19, найдите минимальное значение S, при котором одновременно выполняются два условия: – у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети; – у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом. Если найдено несколько значений S, в ответе запишите минимальное из них.

Задание №4375.
Построение дерева игры по заданному алгоритму. ЕГЭ по информатике

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

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

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

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

Пояснение:
Решим задание, написав программу на языке программирования Python.

def game(s, move_counter):
    if move_counter == 2 and s >= 129: return 0
    elif move_counter == 3 and s >= 129: return 1
    elif move_counter == 4 and s >= 129: return 0
    elif move_counter == 5 and s >= 129: return 1
    elif move_counter == 5 and s < 129: return 0
    else:
        if move_counter % 2 != 0:
            return game(s + 1, move_counter + 1) and game(s * 2, move_counter + 1)
        else:
            if move_counter == 2:
                return game(s + 1, move_counter + 1) != game(s * 2, move_counter + 1)
            else:
                return game(s + 1, move_counter + 1) or game(s * 2, move_counter + 1)

final = []
for s in range(1,129):
    if game(s, 1) == 1:
        final.append(s)
print(min(final))

Таким образом, 62 — минимальное значение S, при котором одновременно выполняются два условия.

Показать ответ

Источник: ФИПИ. Открытый банк тестовых заданий
Сообщить об ошибке


Тест с похожими заданиями