EduBrick

I. Ровно k перелётов до каждого

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

Как классная задача I, но ответ выводится для каждого города.

Разница с предыдущей задачей — ровно та же, что между классными H и I: новый слой начинается с бесконечностей, а не с копии предыдущего.

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

Формат ввода

Первая строка содержит числа nn (2≤n≤1002 \le n \le 100), mm (1≤m≤1051 \le m \le 10^5), kk (1≤k≤1001 \le k \le 100) и ss.

Далее идут mm строк: город вылета, город прилёта и стоимость pp (1≤p≤1061 \le p \le 10^6).

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

Одна строка из nn чисел.

Примеры

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