最小生成树
Hearthougan
这个作者很懒,什么都没留下…
展开
-
zoj 1203 Swordfish
最小生成树,简单的模板题#include #include #include #include #include #include using namespace std;const int MAXN = 110;const int MAXM = 5010;struct Edge{ int u, v; double w;};int n, m;int p原创 2013-10-29 21:00:23 · 735 阅读 · 0 评论 -
poj The Unique MST
题目来源:http://poj.org/problem?id=1679原创 2014-04-21 22:03:00 · 753 阅读 · 0 评论 -
poj 1258 Agri-Net
题目来源:原创 2014-04-18 09:47:14 · 621 阅读 · 0 评论 -
Prim算法
一、Prim 算法的思想: 普里姆算法的基本思想是以顶点为主导地位:从起始顶点出发,通过选择当前可用的最小权值边依次把其他顶点加入到生成树当中来。设连通无向网为G(V, E),在普里姆算法中,将顶点集合V分成两个子集合T和T':T:当前生成树顶点集合,T':不属于当前生成树的顶点集合。很显然有:T∪T'= V。普里姆算法的具体过程为:1) 从连通无向网G中选择一原创 2013-11-27 05:07:57 · 2131 阅读 · 0 评论 -
Nyoj 38 布线问题
题目来源:http://acm.nyist.net/JudgeOnline/problem.php?pid=38Kruscal,最小成树木原创 2014-04-16 21:47:09 · 627 阅读 · 0 评论 -
zoj 2048 Highways poj 1751
两题几乎就是一摸一样的,只是输入格式不一样。#include #include #include #include #include #include using namespace std;const int MAX = 1000;const int INF = 10000010;struct Point{ int x,y;} point[MAX];in原创 2013-11-28 13:04:42 · 967 阅读 · 0 评论 -
zoj 1914 poj 2349 Arctic Network
题目大意: 国防部想在北部的前哨之间建立一个无线网络连接这些前哨。在建立网络时使用了两种不同的通信技术:每个前哨有一个无线电收发器,有一些前哨还有一个卫星频道。 任何两个拥有卫星频道的前哨之间可以直接通过卫星进行通信,而且卫星通信跟距离和位置无关。否则,两个前哨之间通过无线电收发器进行通信,并且这两个前哨之间的距离不能超过D,这个D值取决于无线电收发器的功率。功率越大,D值也就原创 2013-11-28 11:24:31 · 717 阅读 · 0 评论 -
zoj 1586 QS Network (Prim)
#include #include using namespace std;const int MAXN = 1010;const int INF = 10000010;int Edge[MAXN][MAXN];int lowcost[MAXN];int adapter[MAXN];int n;void Inite(){ int i, j; cin>>n; me原创 2013-11-27 18:40:52 · 791 阅读 · 0 评论 -
zoj 2158 poj 1789 Truck History (Prim)
题目大意: 高级货物运输公司ACM使用不同类型的卡车。有些卡车用来运蔬菜,有些用来运水果,还有一些用来运砖,等等。该公司对不同的卡车有自己的编码方法。卡车的编码为一个包含7个字符的字符串(每个位置上的字符都有特定的含义,但这一点对本题并不重要)。在ACM公司发展历史上的初期,只有一种卡车可供使用,只有一种卡车类型编码;后来又引进了新的一种卡车类型,新卡车的类型编码是从第一种卡车编码派原创 2013-11-27 19:56:53 · 867 阅读 · 0 评论 -
poj 1861
#include #include #include using namespace std;const int MAXN = 1010;const int MAXM = 15010;struct Edge{ int u, v, w;};Edge edges[MAXM];int ans[MAXN];int parent[MAXN], kcount[MAXN];in原创 2013-11-26 13:52:40 · 650 阅读 · 0 评论 -
最小生成树 Kruskal
Kruskal思想是以边为主导地位,始终都是选择当前权值最小的边。具体算法步骤: 1) 设一个有n个顶点的连通网络为G(V, E),最初先构造一个只有n个顶点,没有边的非连通图T= { V, Ø },图中每个顶点自成一个连通分量。 2) 当在E中选择一条具有最小权值的边时,若该边的两个顶点落在不同的连通分量上,则将此边加入到T中;否则,即这条边的两个顶点落在同一个连通分量上,则原创 2013-11-26 11:37:15 · 908 阅读 · 0 评论 -
zoj 1406 poj 1251 Jungle Roads
#include #include #include #include using namespace std;const int MAXN = 27;const int MAXM = 100;struct Edge{ int u, v, w;};Edge edges[MAXM];int parent[MAXN];int kcount[MAXN];int Max原创 2013-11-26 16:23:24 · 767 阅读 · 0 评论 -
poj 2421 Constructing Roads (Kruskal)
#include #include #include using namespace std;const int MAXM = 10050;const int MAXN = 110;struct Edge{ int u, v, w;};Edge edges[MAXM];int parent[MAXN];int n, m;void UFset(){ int原创 2013-11-27 03:31:35 · 783 阅读 · 0 评论 -
zoj 1372
#include #include #include #include #include #include #include #include #include #include #define Max(a,b) ((a)>(b)?(a):(b))#pragma comment(linker, "/STACK:16777216")using namespace std ;原创 2013-11-26 21:26:28 · 721 阅读 · 0 评论 -
九度 题目1017:还是畅通工程
题目来源:http://ac.jobdu.com/problem.php?pid=1017原创 2014-06-20 09:27:28 · 664 阅读 · 0 评论