最小生成树
图论-最小生成树
_7许
%
展开
-
【两点间路径边权最大差值最小化】HDU 1598 find the most comfortable road
HDU 1598 find the most comfortable road 枚举最小边权,找MST,在这个过程中,当起点和终点连在一起之后,就是一个差值 枚举完所有的边,找到差值最小 这个过程中总是可以找到使得两点间的边权最大差值最小的路径,没有反例就是证明 #include <iostream> #include <cstdio> #include <alg...原创 2019-10-31 22:00:50 · 319 阅读 · 0 评论 -
【判断MST的唯一性】POJ 1679 The Unique MST
POJ 1679 The Unique MST 这道题非常非常非常非常非常的坑 不管怎么样吧,过了n久终于过了,而且还很迷。 说说AC思路: 我们将每条边的序号记录在id里 第一次,我们将边权升序,id降序,找到MST,记录MST所用的边的序号 第二次,我们将边权升序,id升序,找到MST,记录MST所用的边的序号 如果两次mst的结果不同,说明没有MST唯一 如果相同,那么我们将两次找到的MS...原创 2019-10-28 20:24:31 · 650 阅读 · 0 评论 -
【MST-Prime】POJ 3625 Building Roads
POJ 3625 Building Roads 模板 #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <cmath> #include <cstring> #include <string> #...原创 2019-09-22 21:18:45 · 92 阅读 · 0 评论 -
【MST-Kruskal】POJ 1861 Network
POJ 1861 Network 题意: 给出所有可行的路径的信息(两个坐标点和路径长度),我们要从这幅图中找出一个连通图,使所有的点都能够直接或间接的连通。限制条件是要保证最大的路径长度最小,以及所有点的连通即可。 思路: 这道题是Special Judge。题目中的两点限制并没有说一定是MST,只不过MST是一种解法,当然只要保证两种限制的条件即正确答案。 剩下的话就是MST的模板。 ...原创 2019-09-22 16:27:57 · 132 阅读 · 0 评论 -
【MST-Prime】POJ 2560 Freckles
POJ 2560 Freckles 给出所有点的坐标,然后让求将这些点连起来需要的最少的路径长度。 先将每两点之间的距离算出来存起来,然后再用Prime求最小生成树就好了。 #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include &l...原创 2019-09-20 15:14:29 · 133 阅读 · 0 评论 -
【MST-Kruskal】POJ 2377 Bad Cowtractors
POJ 2377 Bad Cowtractors #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <cmath> #include <cstring> #include <string> #in...原创 2019-09-17 20:04:33 · 96 阅读 · 0 评论 -
【MST-Prime】POJ 1789 Truck History
POJ 1789 Truck History They defined the distance of truck types as the number of positions with different letters in truck type codes.(卡题面,QAQ,读不下去不想读,后来发现就这一句重要,距离就是两个字符串对应位置上不同字母的个数) 然后就是最小生成树的模板了。 ...原创 2019-09-05 20:51:34 · 219 阅读 · 0 评论 -
【MST-Prime】POJ 1258 Agri-Net
POJ 1258 Agri-Net MST模板题 Prime算法:跑点,维护点到树上的最短距离,跟最短路有本质区别。 #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <cmath> #include <cstri...原创 2019-09-04 17:12:44 · 149 阅读 · 0 评论 -
【MST-Kruskal】HDU 3371 Connect the Cities
HDU 3371 Connect the Cities 题意 有n个城市,m条可建造道路(分别对应各自的建造费用),k 组城市相互连通。让我们判断这n个城市是不是能够连通,能就输出最少的建造费用。 思路 Kruskal 我们将互相连通的点Merge起来,然后将可建造的道路按照权值排序,从小到大取,看是不是能够构成一棵树,如果不能就说明祖先结点不止一个。 (杭电交C++给我T了,然后交G++...原创 2019-08-28 20:50:05 · 157 阅读 · 0 评论 -
【MST-prime】HDU 1102 Constructing Roads
【MST-prime】HDU 1102 Constructing Roads 题意 以邻接矩阵的形式给出各点之间的距离,然后再给出Q条已经建好的道路,让我们求最小的建造路径的成本使得各点间相互贯通。 思路 因为每两个点中间的边都给了,所以这是一幅稠密图,但是N的范围在100内,所以我们采用prime算法。 prime算法 (历经暑假放假已经完全忘光了QAQ) 我们需要做的是维护点到树上的...原创 2019-08-28 19:14:29 · 167 阅读 · 0 评论 -
【最小生成树-Kruskal】POJ 3522 Slim Span
POJ 3522 Slim Span #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <cmath> #include <cstring> #include <string> #include ...原创 2019-07-19 20:30:59 · 160 阅读 · 0 评论 -
【最小生成树-Kruskal】HDU 1102 Constructing Roads
HDU 1102 Constructing Roads 题意:有V个结点,每两个结点间有一条边,以邻接矩阵的形式输入。已经存在的路径有E条,并且输入这些路径的两个结点(起始点)。问:在已经存在的边的基础上使所有点连通的最小路径是多少。 思路:将已经存在的路径的起始点放在一棵树上,我们要考虑到存在的路径中有环,所以记录下已经存在的树枝的数量exist,然后按照kruskal的模板走就行了,只是边个...原创 2019-07-18 15:32:02 · 119 阅读 · 0 评论 -
【最小生成树-kruskal】HDU 1233 还是畅通工程
HDU 1233 还是畅通工程 #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <cmath> #include <cstring> #include <string> #include <...原创 2019-07-18 11:42:32 · 136 阅读 · 0 评论 -
【最小生成树-Prim】HDU 1863 畅通工程
Prime????Prim!!!!谁是罪魁祸首!!教我教错了!!!直到学了软基才知道这个算法是叫prim,我就说为什么和质数prime是一个单词wwww,我太难了原创 2019-07-17 20:55:11 · 208 阅读 · 0 评论 -
【最小生成树-Kruskal】HDU 1301 Jungle Roads
Jungle Roads #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <cmath> #include <cstring> #include <string> #include <ve...原创 2019-07-17 20:36:43 · 112 阅读 · 0 评论