最小生成树
SYaoJun
这个作者很懒,什么都没留下…
展开
-
858. Prim算法求最小生成树
AcWing题目链接#include<iostream>#include<algorithm>#include<cstring>using namespace std;const int N=510,INF=0x3f3f3f;int n,m;bool st[N];//状态int g[N][N]; //创建图int d[N];//点之间对距离i...原创 2019-10-30 22:49:09 · 153 阅读 · 0 评论 -
859. Kruskal算法求最小生成树
AcWing题目链接Kruskal算法把所有边按照边权从小到大排序把边权最小的两个顶点使用并查集加入同一个集合#include <iostream>#include <cstring>#include <algorithm>using namespace std;const int M = 2e5+5;int root[M];struct...原创 2019-10-30 22:47:03 · 100 阅读 · 0 评论 -
最小生成树模板
https://www.luogu.org/problemnew/show/P3366#include #include using namespace std;const int maxn = 2000005; const int maxx = 5005;int root[maxx];int find(int x){ return x==root[x]?x:root[x原创 2018-01-31 03:11:36 · 302 阅读 · 0 评论 -
还是畅通工程【浙江大学】★
题目描述 某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要求铺设的公路总长度为最小。请计算最小的公路总长度。 输入描述: 测试输入包含若干测试用例。每个测试用例的第1行给出村庄数目N ( < 100 );随后的N(N-1)/2行对应...原创 2018-03-01 17:17:42 · 173 阅读 · 0 评论 -
7-10 公路村村通 (30 分)
最小生成树使用kruskal算法求解#include<bits/stdc++.h>using namespace std;const int maxn=3005;int n,m,ans;struct node{ int u,v,cost;}E[maxn];bool cmp(node a, node b){ return a.cost < b.cost;}i...原创 2019-02-11 11:17:48 · 959 阅读 · 0 评论 -
51nod 1212 无向图最小生成树
题目链接kruskal算法1.先对边权从小到大排序2.每次挑选边权最小的两个顶点来判断,如果不在一个集合,就用并查集进行合并。3.每次合并的时候记录权值,最后输出。#include <iostream>#include <vector>#include <algorithm> #include <cstring>using name...原创 2019-09-02 10:38:54 · 113 阅读 · 0 评论 -
7-50 畅通工程之局部最小花费问题 (35 分)
并查集kruskal算法的应用需要先将连通的点合并起来,然后再查询。由于集合的原因,肯定不会包含重复的点。#include <iostream>#include <cstdio>#include <string>#include <unordered_map>#include <algorithm>using names...原创 2019-09-26 16:18:47 · 641 阅读 · 0 评论