#568. 【模板】单源最短路径(弱化版)

【模板】单源最短路径(弱化版)

说明

如题,给出一个有向图,请输出从某一点出发到所有点的最短路径长度。

输入格式

第一行包含三个整数 n,m,sn,m,s,分别表示点的个数、有向边的个数、出发点的编号。

接下来 mm 行每行包含三个整数 u,v,wu,v,w,表示一条 u \to vuv 的,长度为 ww 的边。

输出格式

输出一行 nn 个整数,第 ii 个表示 ss 到第 ii 个点的最短路径,若不能到达则输出 231-1。

样例

输入数据 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

提示

【数据范围】
对于 20\%20% 的数据:1\le n \le 51n51\le m \le 151m15
对于 40\%40% 的数据:1\le n \le 1001n1001\le m \le 10^41m104
对于 70\%70% 的数据:1\le n \le 10001n10001\le m \le 10^51m105
对于 100\%100% 的数据:1 \le n \le 10^41n1041\le m \le 5\times 10^51m5×105,保证数据随机。