最小生成树
VL——MOESR
ga
展开
-
【图论训练】天气晴朗的魔法【最小生成树】
最小生成树原创 2022-11-07 18:06:14 · 74 阅读 · 0 评论 -
【集训DAY8】water【最小生成树】
最小生成树原创 2022-08-12 19:19:02 · 87 阅读 · 0 评论 -
【集训DAY15】油漆道路【最小生成树】
最小生成树原创 2022-07-25 16:17:46 · 44 阅读 · 0 评论 -
【集训DAY12】树!树!树!【贪心】【最小生成树】
最小生成树+枚举原创 2022-07-22 15:30:14 · 49 阅读 · 0 评论 -
【集训DAY12】Minn ratio 【dfs】【最小生成树】
dfs+最小生成树原创 2022-07-22 15:25:08 · 114 阅读 · 0 评论 -
【集训DAY1】Spy dispatch【最小生成树】
最小生成树原创 2022-07-11 19:52:56 · 60 阅读 · 0 评论 -
【YBTOJ进阶训练指导】最小距离和【最小生成树】【贪心】
思路:我们发现只有距离最近的两点才会被连边,于是我们按照x,y,z分别排一次序,然后统计出可能连的边,然后做最小生成树codecodecode#include<iostream>#include<cstdio>#include<algorithm>using namespace std;int n, tot, num;int fa[101000];struct node{ int x, y, z, id;}a[101000];struc..原创 2022-02-22 19:52:58 · 158 阅读 · 0 评论 -
【YBTOJ进阶训练指导】保留道路【最小生成树】
思路:我们考虑有最小生成树得到最小生成树我们一条一条边加进边集,然后每次重新做一遍最小生成树。时间复杂度:O(nm)O(nm)O(nm)(排序时间是n,用插入排序)codecodecode#include<iostream>#include<cstdio>#include<algorithm>using namespace std;long long n, m, top, st[1010100];long long wG, wS, ans=1..原创 2022-02-21 20:49:58 · 85 阅读 · 0 评论 -
【YBTOJ进阶训练指导】小明反击【并查集】
思路:考虑两个连通块合并,把所有不连的边赋为w+1codecodecode#include<iostream>#include<algorithm>#include<cstdio>using namespace std;long long t, n, fa[1010100], siz[1010100];struct node{ long long x, y, w;}a[1010100];bool cmp(node x, node y)..原创 2022-02-21 20:17:03 · 94 阅读 · 0 评论 -
2021.08.20【NOIP提高A、B组】模拟 Tree
思路:枚举平均数,直接计算codecodecode#include<iostream>#include<algorithm>#include<cstdio>#include<cmath>using namespace std;int n, m, fa[1010];struct node{ int x, y; double w, fang;}b[400100];double maxn, a[10100], ans=10000..原创 2021-08-20 19:45:46 · 69 阅读 · 0 评论 -
【YBTOJ】构造完全图
思路:首先这是一道最小生成树的题,看得出来我们分析最小生成树的操作过程,是把没有合并的连通块合并,那么每个还未合并的联通快都一定是当前最优的情况,那么可以考虑用拆开来看。如果要把两个连通块合并,那么肯定是找它们之间最短的边,其它的连边就舍去,那么其它的连边的和不就是我们要加上的吗,因为是最小,所以让它们都等于z+1就可以了codecodecode#include<iostream>#include<cstdio>#include<algorithm> ..原创 2021-04-03 14:29:56 · 64 阅读 · 0 评论 -
【YBTOJ】公路建设
思路:不要把这道题想得太复杂,其实就是插排加最小生成树暴力,可以卡过codecodecode#include<iostream>#include<cstdio>#include<algorithm>using namespace std;int n, m;struct node{ int x, y, z;}a[10010];int fa[1000];int find(int x){ if(x==fa[x]) return x;..原创 2021-04-03 11:22:23 · 121 阅读 · 0 评论 -
【YBTOJ】新的开始
思路:昨天刚讲超级终点,所以这道题贼水设一个超级点,然后把所有水站的费用连向它,然后构造这个最小生成树就行了codecodecode#include<iostream>#include<cstdio>using namespace std;int n;int a[500][500];int dis[500];bool v[500];int main(){ scanf("%d", &n); for(int i=1; i<=n; i+..原创 2021-04-03 11:03:54 · 98 阅读 · 0 评论 -
【YBTOJ】繁忙的都市
思路:这道题就是最小生成树模板题codecodecode#include<iostream>#include<cstdio>#include<algorithm>using namespace std;int n, m, fa[100010];struct node{ int x, y, z;}a[1001000];bool cmp(node x, node y){ return x.z<y.z;}int find(in..原创 2021-04-03 10:14:29 · 96 阅读 · 0 评论 -
1618剑鱼行动
Description给出N个点的坐标,对它们建立一个最小生成树,代价就是连接它们的路径的长度,现要求总长度最小。N的值在100以内,坐标值在[-10000,10000].结果保留二位小数Input5 //5个点 0 0 //5个点点的坐标 0 1 1 1 1 0 0.5 0.5 Output2.83套模板!#include<iostream>#inc...原创 2019-12-20 21:15:11 · 104 阅读 · 1 评论 -
1682 USACO 3.1 Agri-Net 最短网络 (最小生成树)
Description农民约翰被选为他们镇的镇长!他其中一个竞选承诺就是在镇上建立起互联网,并连接到所有的农场。当然,他需要你的帮助。约翰已经给他的农场安排了一条高速的网络线路,他想把这条线路共享给其他农场。为了用最小的消费,他想铺设最短的光纤去连接所有的农场。你将得到一份各农场之间连接费用的列表,你必须找出能连接所有农场并所用光纤最短的方案。每两个农场间的距离不会超过100000Inpu...原创 2019-12-20 20:34:28 · 82 阅读 · 0 评论 -
1612最优布线问题
Description学校有n台计算机,为了方便数据传输,现要将它们用数据线连接起来。两台计算机被连接是指它们之间有数据线连接。由于计算机所处的位置不同,因此不同的两台计算机的连接费用往往是不同的。当然,如果将任意两台计算机都用数据线连接,费用将是相当庞大的。为了节省费用,我们采用数据的间接传输手段,即一台计算机可以间接的通过若干台计算机(作为中转)来实现与另一台计算机的连接。现在由你负责...原创 2019-12-19 16:31:58 · 76 阅读 · 0 评论