19.07 Прочие прототипы
Ошибка.
Попробуйте повторить позже
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат три кучи камней. Игроки ходят по очереди,
первый ход делает Петя. За один ход игрок может либо добавить в одну из куч один камень, либо увеличить количество
камней в два раза. Чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается в
тот момент, когда суммарное количество камней в кучах становится не менее . Победителем считается
игрок, сделавший последний ход, т. е. первым получивший позицию, в которой в кучах будет
или больше
камней.
В начальный момент в первой куче было камней, во второй куче был
каменей, в третьей —
камней,
. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах
противника.
Известно, что Петя выиграл своим первым ходом. Назовите минимальное значение , при котором это
возможно.
def moves(h):
a, b, c = h
return (a + 1, b, c), (a, b + 1, c), (a, b, c + 1), (a * 2, b, c), (a, b * 2, c), (a, b, c * 2)
@lru_cache(None)
def f(h):
if sum(h) >= 70:
return "END"
if any((f(x) == "END") for x in moves(h)):
return "P1"
if all((f(x) == "P1") for x in moves(h)):
return "V1"
if any((f(x) == "V1") for x in moves(h)):
return "P2"
if all((f(x) == "P2" or f(x) == "P1") for x in moves(h)):
return "V2"
for s in range(39, 0, -1):
h = 20, 10, s
if f(h) == "P1":
print(s, "P1")
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!