P0700

【POJ Challenge 】永远挑战

【POJ Challenge 】永远挑战

lqp18_31 和 1tthinking 经常出题来“虐” ftiasch。有一天,lqp18_31 构造了一个有向图,其中每条边的长度都是 11。他想让 ftiasch 求出从点 11 到点 NN 的最短路。ftiasch 说道:“水题啊。”

于是,1tthinking 将某些边的长度增加了 11,也就是说,现在每条边的长度不是 11 就是 22。可怜的 ftiasch 只好向你求助。

时间限制:10000 ms10000\ \mathrm{ms}。
内存限制:131072 KB131072\ \mathrm{KB}。

输入格式

第 11 行包含两个整数 NN 和 MM,分别表示点的数量和边的数量。

接下来 MM 行,每行包含三个整数 UiU_i、ViV_i 和 WiW_i,表示存在一条从点 UiU_i 到点 ViV_i 的有向边,边长为 WiW_i。

输出格式

输出一个整数,表示从点 11 到点 NN 的最短路长度。

数据保证至少存在一条从点 11 到点 NN 的路径。

样例输入

3 3
1 2 1
2 3 1
1 3 2

样例输出

2

数据范围

  • 1≤N≤1051\le N\le 10^5;
  • 1≤M≤1061\le M\le 10^6;
  • 1≤Wi≤21\le W_i\le 2。

来源与许可

本题为 POJ Challenge 试题「永远挑战」,题面与测试数据整理自 BZOJ 2292。

样例 1

输入

3 3
1 2 1
2 3 1
1 3 2

输出

2