A. Форд — Беллман
2000 мс · 256 МБ · всё или ничего
Дан ориентированный граф с целыми весами рёбер; веса могут быть отрицательными. Отрицательных циклов нет. Найдите расстояния от вершины 1 до всех остальных.
Дейкстра здесь не годится: её доказательство опиралось на то, что снятая с кучи вершина уже не улучшится, а с отрицательными рёбрами это неверно. Нужен другой алгоритм.
Формат ввода
Первая строка содержит числа () и ().
Далее идут строк с рёбрами: начало, конец и вес (). Возможны кратные рёбра и петли.
Формат вывода
Одна строка из чисел — расстояния от вершины 1. Для недостижимых вершин выведите .
Примеры
ввод
6 4 1 2 10 2 3 10 1 3 100 4 5 -10
вывод
0 10 20 30000 30000 30000
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.