Cho đồ thị có hướng n đỉnh (đánh số từ 1) và m cạnh có trọng số (có thể âm). Từ đỉnh nguồn s, hãy tính đường đi ngắn nhất tới mọi đỉnh.
Với mỗi đỉnh v in ra:
INF nếu không tới được từ s.-INF nếu đường đi tới v có thể nhỏ tùy ý (bị ảnh hưởng bởi chu trình âm tới được từ s).Ví dụ: với 3 đỉnh, 3 cạnh, nguồn 1 và các cạnh (125),(23−2),(1310) thì khoảng cách là 0 5 3.
Dòng đầu: ba số n, m, s. m dòng sau: mỗi dòng ba số u, v, w — cạnh có hướng từ u tới v trọng số w.
1≤n≤2000, 0≤m≤6000, 1≤s≤n, −104≤w≤104.
Một dòng gồm n giá trị cách nhau bởi dấu cách: khoảng cách ngắn nhất từ s tới đỉnh 1,2,…,n (hoặc INF/-INF).
Ví dụ:
Đầu vào:
3 3 1
1 2 5
2 3 -2
1 3 10
Đầu ra:
0 5 3
Giải thích:
Đang tải editor...