30028 - Dijkstra?

通过次数

1

提交次数

1

时间限制 : 1 秒
内存限制 : 128 MB

给定一个带权无向图,顶点编号从 1n。你的任务是找到从顶点 1 到顶点 n 的最短路径。

输入

第一行包含两个整数 nm2 \le n \le 10^50 \le m \le 10^5),其中 n 是顶点数,m 是边数。

接下来 m 行,每行包含一条边,格式为 a_i, b_i, w_i1 \le a_i, b_i \le n1 \le w_i \le 10^6),其中 a_i, b_i 是边的两个端点,w_i 是边的长度。

图中可能存在自环和重边。

输出

如果不存在路径,输出 -1

否则输出最短路径。如果有多个解,输出字母序最小的那一个,即从前到后比较路径中的元素大小,若相同则往后,并且排除该位置上元素大的路径,直至只存在一个路径为止。

样例

输入

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

输出

1 4 3 5