#1339. P3371 【模板】单源最短路径(标准版)

P3371 【模板】单源最短路径(标准版)

P3371 【模板】单源最短路径(标准版)

题目描述

给定一个 nn 个点、mm 条有向边的带非负权图,请你计算从 ss 出发,到每个点的距离。

数据保证你能从 ss 出发到任意点。

输入格式

第一行为三个正整数 n,m,sn, m, s。

第二行起 mm 行,每行三个非负整数 ui,vi,wiu_i, v_i, w_i,表示从 uiu_i 到 viv_i 有一条权值为 wiw_i 的有向边。

输出格式

输出一行 nn 个空格分隔的非负整数,表示 ss 到每个点的距离。

数据规模

1≤n≤1051 \le n \le 10^5;1≤m≤2×1051 \le m \le 2 \times 10^5;

1≤ui,vi≤n1 \le u_i, v_i \le n;0≤wi≤1090 \le w_i \le 10^9,0≤∑wi≤1090 \le \sum w_i \le 10^9。

样例输入 1

4 6 1
1 2 2
2 3 2
2 4 1
1 3 5
3 4 3
1 4 4

样例输出 1

0 2 4 3

样例输入 2

5 4 1
1 2 3
2 3 2
3 4 4
4 5 1

样例输出 2

0 3 5 9 10

样例输入 3

3 4 1
1 2 10
1 2 3
2 3 5
1 3 20

样例输出 3

0 3 8

样例输入 4

4 5 1
1 1 5
1 2 2
2 3 3
3 4 1
1 4 10

样例输出 4

0 2 5 6

样例输入 5

5 7 3
1 2 5
2 3 1
3 1 2
3 4 4
4 5 3
2 5 10
1 5 8

样例输出 5

2 7 0 4 7