并查集
并查集
jpphy0
算法是存在的
展开
-
HDU 1272 小希的迷宫
链接 - http://acm.hdu.edu.cn/showproblem.php?pid=1272 分析 迷宫可能为空,即该组数据仅有 0 0 代码 /* hdu 1272 小希的迷宫 */ #include<bits/stdc++.h> using namespace std; #define MXN 100010 int N, M, fa[MXN], flag; int find(int x){ if(x != fa[x]) fa[x] = find(fa[x]); retur原创 2021-05-09 12:52:09 · 101 阅读 · 2 评论 -
HDU 1879 继续畅通工程
链接 - http://acm.hdu.edu.cn/showproblem.php?pid=1879 分析 连通森林 已建道路代价为0 代码 /* HDU 1879 继续畅通工程 */ #include<bits/stdc++.h> using namespace std; #define MXN 110 #define MXM 110*55 int N, M, fa[MXN], ans; struct Road{ int a, b, c, s; bool operator<(T原创 2021-05-08 16:16:40 · 115 阅读 · 1 评论 -
HDU 1863 畅通工程
链接 - http://acm.hdu.edu.cn/showproblem.php?pid=1863 代码 /* HDU 1863 畅通工程 */ #include<bits/stdc++.h> using namespace std; #define MXN 110 #define MXM 110*55 int N, M, fa[MXN], ans; struct Town{ int a, b, c; bool operator<(Town t){ return c < t.原创 2021-05-08 10:59:43 · 87 阅读 · 1 评论 -
HDU 1233 还是畅通工程(最小生成树, Prim+优先队列 || Kruskal+并查集)
链接 - http://acm.hdu.edu.cn/showproblem.php?pid=1233 代码 /* hdu 1233 还是畅通工程 */ #include<bits/stdc++.h> using namespace std; #define MXN 110 #define MXM 110*55 int N, fa[MXN], ans; struct Town{ int a, b, c; bool operator<(Town t){ return c < t.c原创 2021-05-07 21:45:10 · 161 阅读 · 1 评论 -
HDU 1232 畅通工程
链接 - http://acm.hdu.edu.cn/showproblem.php?pid=1232 分析 连通的城镇在一个集合中,不连通的城镇分布在互不相交的集合中,集合是树形结构 初始时,各个城镇互不连通,即有N个集合(N个互不相交的集合) 在查询过程中,查询路径上的城镇成为根的儿子,称为:路径压缩。 代码 #include<bits/stdc++.h> using namespace std; #define MXN 1010 int N, M, fa[MXN]; int find(原创 2021-05-07 09:19:32 · 104 阅读 · 1 评论