#P2468. 2468 - 快速访问

2468 - 快速访问

题目描述

在广阔的大陆上有 nn 个城市(编号为 11 \sim nn ),城市之间修建了 mm 条双向的道路,且任意两个城市之间最多只有 11 条路。

请编程输出,从 11 号城市到 nn 号城市的所有可行的路线中,哪条路线经过的城市数量最少,请输出经过的城市数量(计算经过城市的数量,包含 11 号城市和 nn 号城市)。

输入

第 1 行,有 2 个整数 nnmm 。( 1n1001<n≤100,1m(n1)×n/21≤m≤(n-1)×n/2

接下来 mm 行,每行有 22 个整数 xxyy ,表示两个城市之间有一条双向道路。( 1x,yn1≤x,y≤nxyx \neq y ,两个城市之间至多只有一条双向道路)

输出

输出从 11 号城市到 nn 号城市,最少要经过几个城市;

请注意,如果从 11 号城市无法到达 nn 号城市,请输出No Path

样例

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