2013年5月31日
摘要: 链接:http://poj.org/problem?id=1861题意:给n个路由器,注意标号为1到n,m表示这n个路由器之间的连接关系数,要连接这些路由器,且必须保证最长的单根网线的长度是所有方案中最小的。输出连接方案中最长网线的长度和所用网线的根数以及每根网线所连路由器的编号。思路:没有直接要求求最小生成树,可以知道,所选网线条数必是n-1。另外,可以证明,对于一个图的最小生成树来说,它的最大边满足在所有生成树的最大边里最小。由于kruscal算法是先选长度较小的边,所以长度最大的边必然是最后选定的一条边。还有,poj和zoj上的这道题Sample Output有错误。#include#i 阅读全文
posted @ 2013-05-31 22:31 ∑求和 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1203题意:给出n个城市的坐标,计算连接这n个城市所需路线总长度的最小值。思路:先求出每两个城市间的距离,也就是边权,然后用kruscal来求最小生成树,得出最小值。注意输出格式,要求每两个输出之间要有一个空行。但是最后的一个输出后面不能有空行,所以判断是不是第一个输出,不是的话,先打一个空行。一开始写wa了,找了很久错误没找出来,后面发现是cmp()函数写的有问题。一开始我是直接把上次写的kruscal()示例程序中的cmp()函数粘贴了过来。没想问题,结果,呵呵 阅读全文
posted @ 2013-05-31 12:59 ∑求和 阅读(229) 评论(0) 推荐(0) 编辑