IT
Редактор
1
Нажмите "Выполнить", чтобы запустить код.
Введите данные:
НовостьИнформатика ЕГЭ - 11 класс 28.08.2026 19:14

Задание 23. ЕГЭ Инф. 2027

from functools import cache
from collections import defaultdict

# 1. Считываем данные в словарь списков (граф)
g = defaultdict(list)
for s in open('23.txt'):
    u, v, w = s.split()
    g[int(u)].append((int(v), float(w)))


# 2. Шаблонная функция поиска (как в классическом №23, но с минимумом)
@cache
def f(u):
    if u == 100:
        return 0  # Цель достигнута
    if not g[u]:
        return float('inf')  # Тупик (нет исходящих ребер)

    # Перебираем все доступные пути и выбираем минимальный
    return min(w + f(v) for v, w in g[u])


# 3. Вывод ответа (отбрасываем дробную часть в самом конце)
print(int(f(1)))


Прикрепленные материалы