1904.py
Два игрока, Петя и Ваня, играют в следующую игру.
На доске перед ними записан ряд идущих подряд натуральных чисел.
Игроки ходят по очереди, первый ход делает Петя.
За один ход игрок может заменить два наибольших числа их суммой.
Выигрывает игрок, после хода которого одно из чисел
становится не меньше 100.
В начальный момент на доске записаны числа от 1 до S включительно,
14 ≤ S ≤ 99.
Задание 19:
Укажите минимальное значение S, при котором Петя
не может выиграть за один ход,
но после хода Пети
Ваня может выиграть своим первым ходом.
Задание 20:
Найдите минимальное и максимальное значения S,
при которых у Пети есть выигрышная стратегия,
причём одновременно выполняются два условия:
- Петя не может выиграть за один ход
- Петя может выиграть своим вторым ходом
независимо от того, как будет ходить Ваня
Найденные значения запишите в ответе в порядке возрастания.
Задание 21:
Найдите минимальное значение S,
при котором одновременно выполняются два условия:
- у Вани есть выигрышная стратегия, позволяющая ему
выиграть первым или вторым ходом при любой игре Пети
- у Вани нет стратегии, которая позволит ему
гарантированно выиграть первым ходом
def sum_2max(nadoske):
b = sorted(nadoske)
return b[:-2] + [b[-2] + b[-1]]
# b[:-2] - удаляем последние 2 элемента
# b[-2] + b[-1] - суммируем последние 2 элемента
def g(nadoske, end):
b = list(nadoske)
hod = 0
while True:
if max(b) >= 100:
return hod in end
if hod >= max(end):
return False
b = sum_2max(b)
hod += 1
def spisok(s):
return list(range(1, s + 1))
print([
s for s in range(15, 99)
#if g(spisok(s), end=[2])
#if g(spisok(s), end=[3])
#if g(spisok(s), end=[2, 4]) and not g(spisok(s), end=[2])
])
"""
Два игрока, Петя и Ваня, играют в следующую игру.
На доске перед ними записан ряд идущих подряд натуральных чисел.
Игроки ходят по очереди, первый ход делает Петя.
За один ход игрок может заменить два наибольших числа их суммой.
Выигрывает игрок, после хода которого одно из чисел
становится не меньше 100.
В начальный момент на доске записаны числа от 1 до S включительно,
14 ≤ S ≤ 99.
Задание 19:
Укажите минимальное значение S, при котором Петя
не может выиграть за один ход,
но после хода Пети
Ваня может выиграть своим первым ходом.
Задание 20:
Найдите минимальное и максимальное значения S,
при которых у Пети есть выигрышная стратегия,
причём одновременно выполняются два условия:
- Петя не может выиграть за один ход
- Петя может выиграть своим вторым ходом
независимо от того, как будет ходить Ваня
Найденные значения запишите в ответе в порядке возрастания.
Задание 21:
Найдите минимальное значение S,
при котором одновременно выполняются два условия:
- у Вани есть выигрышная стратегия, позволяющая ему
выиграть первым или вторым ходом при любой игре Пети
- у Вани нет стратегии, которая позволит ему
гарантированно выиграть первым ходом
"""
def sum_2max(nadoske):
b = sorted(nadoske)
return b[:-2] + [b[-2] + b[-1]]
# b[:-2] - удаляем последние 2 элемента
# b[-2] + b[-1] - суммируем последние 2 элемента
def g(nadoske, end):
b = list(nadoske)
hod = 0
while True:
if max(b) >= 100:
return hod in end
if hod >= max(end):
return False
b = sum_2max(b)
hod += 1
def spisok(s):
return list(range(1, s + 1))
print([
s for s in range(15, 99)
#if g(spisok(s), end=[2])
#if g(spisok(s), end=[3])
#if g(spisok(s), end=[2, 4]) and not g(spisok(s), end=[2])
])
"""
Два игрока, Петя и Ваня, играют в следующую игру.
На доске перед ними записан ряд идущих подряд натуральных чисел.
Игроки ходят по очереди, первый ход делает Петя.
За один ход игрок может заменить два наибольших числа их суммой.
Выигрывает игрок, после хода которого одно из чисел
становится не меньше 100.
В начальный момент на доске записаны числа от 1 до S включительно,
14 ≤ S ≤ 99.
Задание 19:
Укажите минимальное значение S, при котором Петя
не может выиграть за один ход,
но после хода Пети
Ваня может выиграть своим первым ходом.
Задание 20:
Найдите минимальное и максимальное значения S,
при которых у Пети есть выигрышная стратегия,
причём одновременно выполняются два условия:
- Петя не может выиграть за один ход
- Петя может выиграть своим вторым ходом
независимо от того, как будет ходить Ваня
Найденные значения запишите в ответе в порядке возрастания.
Задание 21:
Найдите минимальное значение S,
при котором одновременно выполняются два условия:
- у Вани есть выигрышная стратегия, позволяющая ему
выиграть первым или вторым ходом при любой игре Пети
- у Вани нет стратегии, которая позволит ему
гарантированно выиграть первым ходом
"""