Farmer John最近得到了一些新的农场,他想新修一些道路使得他的所有农场可以经过原有的或是新修的道路互达(也就是说,从任一个农场都可以经过一些首尾相连道路到达剩下的所有农场)。有些农场之间原本就有道路相连。 所有N(1 <= N <= 1,000)个农场(用1..N顺次编号)在地图上都表示为坐标为(X_i, Y_i)的点(0 <= X_i <= 1,000,000;0 <= Y_i <= 1,000,000),两个农场间道路的长度自然就是代表它们的点之间的距离。现在Farmer John也告诉了你农场间原有的M(1 <= M <= 1,000)条路分别连接了哪两个农场,他希望你计算一下,为了使得所有农场连通,他所需建造道路的最小总长是多少。
4 1 1 1 3 1 2 3 4 3 1 4 输入说明: FJ一共有4个坐标分别为(1,1),(3,1),(2,3),(4,3)的农场。农场1和农场 4之间原本就有道路相连。
4.00 输出说明: FJ选择在农场1和农场2间建一条长度为2.00的道路,在农场3和农场4间建一 条长度为2.00的道路。这样,所建道路的总长为4.00,并且这是所有方案中道路 总长最小的一种。