
次小生成树
ITCharge
高效率编程,慢节奏生活。
展开
-
POJ1679 The Unique MST【Kruskal】【次小生成树】
题目大意:给你N个点M条边的图,问:图的最小生成树是否唯一。 思路:参考算法书,在kruskal算法的基础上进行修改,加入(x,y)两点在最小生成树 上路径最长的边的计算。使用了链式前向星记录每个集合中含有那些点。 在合并集合(邻接表)的时候,为了方便,加入了End[]记录邻接表尾节点的位置。 MST表示最小生成树的大小,SecMST表示次小生成树的大小。最后判断是否想等 即可。原创 2014-12-28 00:02:05 · 3246 阅读 · 0 评论 -
HDU4081 Qin Shi Huang's National Road System【Kruskal】【次小生成树】
题目大意:有N个城市,秦始皇要用N-1条路将他们全部连起来,秦始皇希望这N-1条路长度 之和最短。这时候,徐福跳出来说他有魔法,可以凭空变出其中任意一条路来。 秦始皇希望徐福将N-1条路中最长的那条路变出来,但是徐福希望把修路要求人数最多的那条 路变出来(每条路修路的人力是两座城市的人口和)。最终,秦始皇给出了一个公式 A/B 徐福变出的那条路所需人力/除了这条路之外的N-2条路的和 最大。 简化大意为:给你N个城市的坐标(x,y)和人口。 得到他的最小生成树之后,去掉最小生成树上 的一条边,使得这条路原创 2014-12-28 22:20:37 · 1188 阅读 · 0 评论 -
次小生成树【模板】
给一个图,判断图的最小生成树是否唯一。 End[]记录邻接表尾节点的位置。MST表示最小生成树的大小,SecMST表示次小生成树的大小。#include<iostream> #include<algorithm> #include<cstdio> #include<cstring> using namespace std; const int MAXN = 1010; const int MAXM原创 2015-05-02 23:49:53 · 1321 阅读 · 0 评论