#P2044. 城市之间的最短路

城市之间的最短路

题目描述

小丁同学准备去A国旅游,他买了一张A国的地图,地图标出了A国著名的 nn 个旅游热门城市,并标注了这 nn 个城市之间有 mm 条双向路线相连以及每条双向路线的长度。

请你编程帮助小丁求出其中两个城市之间的最短距离。

输入

输入第一行为两个正整数 nnn10n \le 10 )和 mmmn×(n1)/2m \le n \times (n-1)/2 ), nn 表示城市个数, mm 表示线段个数。

接下来 mm 行,每行输入三个整数 a,ba,bll ,表示 aa 市与 bb 市之间存在一条线段,线段长度为 ll 。( aabb 不同,且本题的数据中两个城市之间最多只有一条路)

每组最后一行输入两个整数 xxyy ,表示问题: xx 市与 yy 市之间的最短距离是多少。( xxyy 不同)

城市标号为 1n1 \sim n1l201 \le l \le 20

输出

输出 xx 市与 yy 市之间的最短距离,如果 xx 市与 yy 市之间非连通,则输出 No path

样例

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

来源

图论