在一个地图上有n个点,每个点给出其对应的坐标,有些点之间有路径可达(两点之间有线),有些点之间没有。请编程求解从一个点到另一个点的最短路径长度。
输入文件共n+m+3行,其中:第一行为整数n (n<=100),表示地图上有n个点 。第2行到第n+1行(共n行) ,每行两个整数x和y,描述了一个点的坐标( 每个点的坐标均在-10000~10000之间 )。第n+2行为一个整数m,表示图中连线的个数。此后的m 行,每行描述一条连线,由两个整数i和j组成,表示第i个点和第j个点之间有连线。最后一行:两个整数s和t,分别表示源点和目标点是我们读入的n个点中的第几个点。
输出文件仅一行,一个实数(保留两位小数),表示从s到t的最短路径长度。
样例输入1
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
3.41