EduBrick

O. Короткий цикл через вершину

3000 мс · 256 МБ · всё или ничего

Как классная задача O, но цикл обязан проходить через вершину 1.

Динамика та же, меняется только место, куда смотрим: не вся диагональ, а одна её клетка fk[1][1]f_k[1][1].

Обратите внимание, что ответ может оказаться больше, чем в классной задаче: самый короткий отрицательный цикл в графе не обязан проходить через первую вершину, а иногда через неё вообще ни один не проходит.

Формат ввода

Первая строка содержит числа nn (1≤n≤601 \le n \le 60) и mm (0≤m≤20000 \le m \le 2000).

Далее идут mm строк с рёбрами: начало, конец и вес (∣w∣≤1000|w| \le 1000). Возможны кратные рёбра и петли.

Формат вывода

Одно число — наименьшее количество рёбер в отрицательном цикле через вершину 1, или −1-1.

Примеры

ввод
3 3
1 2 1
2 3 1
3 1 -3
вывод
3
ввод
3 3
2 3 -5
3 2 1
1 2 1
вывод
-1
Войдите, чтобы отправлять решения.