
最小生成树
木槿君
洒洒水啦~~~~~~
展开
-
Kruskal模版
/*选最短边开始 边都存入结构体中并按升序排序 利用并查集将各点相连 满足n-1条边,即遍历完成 */#include<cstdio>#include<iostream>#include<algorithm>#define maxn 55using namespace std;int n,m,sum,cnt,cnte; //n为...原创 2018-09-25 13:18:07 · 226 阅读 · 0 评论 -
POJ T2421 Constructing Roads
POJ T2421 Constructing Roads题解: 给出点与点之间的距离矩阵(maps数组可以不初始化),再给q组已经建好的路,将这些路的距离再标记为0即可。 代码#include<cstdio>#include<algorithm>#define INF 0x3f3f3f3f#d...原创 2018-09-26 08:07:45 · 165 阅读 · 0 评论 -
ZOJ T1586 QS Network
ZOJ T1586 QS Network题解: 给出了每条边需要的花费,但是本题又加了一个条件,就是每两个点之间要连接电缆的话还得各配一个适配器(一条电缆,两个适配器),每个点都有自己需要的适配器的价格,这就是一条边总的花费。这一点要处理好就OK了。 代码#include<cstdio>#inclu...原创 2018-09-26 08:08:08 · 230 阅读 · 0 评论 -
POJ T2031 Building a Space Station
POJ T2031 Building a Space Station题解: 建造空间站之间的通道,空间站是球形,给你三维的坐标和半径,求最短的修建里程。 思路跟二维的没区别,且数据范围小。先求出每个点到其他点的距离。题目中说,如果两个空间站圆心之间距离小于或等于它们的半径之和,是不需要建通道的,所以可以判断下,并赋值为零。 而且最为重...原创 2018-09-26 08:08:39 · 244 阅读 · 0 评论 -
POJ T1751 Highways
POJ T1751 Highways题解: 题意是建高速公路,求需要修那些路。先求出每个点到其他点的距离。因为题目中说有一些道路是已经建好的,所以咱们可以把他们之间的距离赋值为零,然后再进行最小生成树的求解。个人觉得Prim更适合这道题,因为最后只需要遍历一次dis数组,不为零的即为需要修的路。 输出时,需要修建的路的两点...原创 2018-09-26 08:09:02 · 374 阅读 · 0 评论 -
POJ T1287 Networking
POJ T1287 Networking题解: 给的最大点数是50,边可能有无数条(这不是明摆着唬人吗......) 数据范围较小,Prim和Kruskal都可以用 Kruskal写法#include<cstdio>#include<algorithm>#define maxn 55u...原创 2018-09-25 13:53:14 · 320 阅读 · 0 评论 -
POJ T1258 Agri-Net
POJ T1258 Agri-Net题解: 因为给的是N*N的矩阵,所以初始化都省去了,直接上Prim模版...... 代码:#include<cstdio>#include<algorithm>#define maxn 105#define INF 0x3f3f3f3f...原创 2018-09-25 13:38:57 · 160 阅读 · 0 评论 -
POJ T1251 Jungle Roads
POJ T1251 Jungle Roads题解: 点数比较少,A-Z,26个字母,Kruskal和Prim都可以。只需要注意下字符串的输入就可以了。 鄙人给出两个方法的代码,但是接收字符串的方式不一样,Kruskal是单个接收,Prim是懒人%s Kruskal写法#include<cstdio&g...原创 2018-09-25 13:35:01 · 186 阅读 · 0 评论 -
HDU T1233 还是畅通工程
HDU T1233 还是畅通工程题解: 裸题,没啥好说的,直接上Prim模版 代码:#include<cstdio>#include<algorithm>#define maxn 105#define INF 0x3f3f3f3fusing namespace std;int ...原创 2018-09-25 13:26:46 · 170 阅读 · 0 评论 -
Prim 模版
/*选点开始 分为已加入树点集U和未加入树点集V 类似于最短路径,但是,是指点加入U的最短距离 */ #include<cstdio>#include<iostream>#include<algorithm>#define maxn 55#define INF 0x3f3f3f3fusing namespace std;int n,m...原创 2018-09-25 13:19:02 · 209 阅读 · 0 评论 -
POJ T1875 畅通工程再续
POJ T1875 畅通工程再续题解: 前面先输入整个矩阵,再计算每个点到其他点的距离。但要看清楚题目给的条件:2个小岛之间的距离不能小于10米,也不能大于1000米。当然,为了节省资金,只要求实现任意2个小岛之间有路通即可。其中桥的价格为 100元/米。 在选边的时候要记得判断,并且Kruskal写法的话是遍历父节点数组...原创 2018-09-26 08:07:18 · 356 阅读 · 0 评论