#YBT03040312. 最短路径问题(输出路径)

最短路径问题(输出路径)

题目描述

平面上有 nn 个顶点,部分顶点之间存在双向道路。道路长度为两个端点的欧几里得距离。给定起点 ss 和终点 tt,请输出一条最短路径。

输入格式

第一行一个整数 nn。接下来 nn 行,每行两个整数 xi,yix_i,y_i,表示第 ii 个顶点的坐标。接下来一行一个整数 mm,然后 mm 行,每行两个顶点编号,表示一条双向道路。最后一行两个整数 s,ts,t。

输出格式

输出路径上的顶点编号,使用 --> 连接。例如 1-->2-->5。

如果存在多条最短路径,输出任意一条即可。起点与终点相同时,只输出这个顶点编号。路径不能重复经过顶点。

样例

5
0 0
2 0
2 2
0 2
3 1
5
1 2
1 3
1 4
2 5
3 5
1 5
1-->2-->5

数据范围

  • 1≤n≤1001\le n\le100,0≤m≤n(n−1)/20\le m\le n(n-1)/2。
  • −10000≤xi,yi≤10000-10000\le x_i,y_i\le10000。
  • 顶点编号在 11 到 nn 之间,道路没有自环和重边。
  • 保证起点可以到达终点。