
并查集
时间次元
这个作者很懒,什么都没留下…
展开
-
洛谷 #1196. 银河英雄传说
题意n条链,可以将一条链连到另一条链的尾部,查询两个点之间的距离题解带权并查集(几乎是模板吧)调试记录getf的时候,要先把f[x]的dis更新#include <cstdio>#define maxn 30005using namespace std;int _abs(int x){return x > 0 ? x : -x;}int f[maxn], di...原创 2018-11-12 16:16:54 · 169 阅读 · 0 评论 -
洛谷 #1525. 关押罪犯
题意有m对关系,若2个罪犯在同一个监狱会发生c的冲突,只有2个监狱,问冲突的最大值最小化题解把关系按照c从大到小排序若2个罪犯已在1个监狱,输出,return否则合并调试记录合并反集两个都要操作#include <cstdio>#include <algorithm>#define maxn 100005using namespace std;s...原创 2018-11-21 20:39:52 · 246 阅读 · 0 评论 -
洛谷 #2024. 食物链
题意三个种群,A -> B -> C -> A,食物链是环有n个动物,给出u, v同种 或 u吃v,问其中假话的个数题解f[x]同种群,f[x + n]天敌,f[x + 2n]食物调试记录若u吃v,那么u不能是v的食物#include <cstdio>#define maxn 50005using namespace std;int f[max...原创 2018-11-21 20:40:21 · 293 阅读 · 0 评论 -
洛谷 #1892. 团伙
题意给出m对关系 (朋友 or 敌人),朋友的朋友 -> 朋友,敌人的敌人 -> 朋友问集合个数题解又复习了一下正反集朋友: 合并x,y的正集敌人: 合并x的反集和y的正集,y的反集的x的正集y的反集(敌人)-> x的敌人y的敌人 -> x的朋友调试记录无#include <cstdio>#define maxn 1005using n...原创 2018-11-23 20:13:12 · 238 阅读 · 0 评论 -
洛谷 #1955. 程序自动分析
题意有n个表达式 != 或 =,判断是否矛盾题解离散化+并查集调试记录f数组开得太小#include &lt;cstdio&gt;#include &lt;cstring&gt;#include &lt;algorithm&gt;#define maxn 100005using namespace std;int T, n, f[maxn &lt原创 2018-11-25 20:10:27 · 179 阅读 · 0 评论 -
洛谷 #2661. 信息传递
题意在有 \(\ n\) 条边的图中找最短路题解并查集,维护父亲及路径长度调试记录无#include &lt;cstdio&gt;#include &lt;algorithm&gt;#define maxn 200005#define INF 0x3f3f3f3fusing namespace std;int n, ans = INF, f[maxn], dis[maxn...原创 2018-11-28 15:38:35 · 200 阅读 · 0 评论