并查集
XSamsara
AFO
展开
-
BZOJ 1015: [JSOI2008]星球大战starwar【并查集】
1015: [JSOI2008]星球大战starwarTime Limit: 3 Sec Memory Limit: 162 MB【题目描述】 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个星系。某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系中几乎所有的星球。这些星球通过特殊的以太隧道互相直接或间接地连接。 但好景不长,很快帝国又重新造出了他原创 2017-12-20 20:15:56 · 420 阅读 · 0 评论 -
BZOJ1543: 生成树计数【DFS+并查集】
1543: 生成树计数首先我们知道最小生成树的两个性质。1.相同边权的出现次数相同。2.相同边权的连通性相同。所以我们可以直接DFS枚举相同的边权用了哪些,然后并查集撤销就可以了。快的飞起。#include<cstdio>#include<algorithm>using namespace std;const int MAXN=50005,MAXM=100...原创 2019-03-20 07:23:29 · 199 阅读 · 0 评论 -
BZOJ3669: [Noi2014]魔法森林【并查集+LCT】
3669: [Noi2014]魔法森林【题目描述】传送门【题解】我们发现只要记录这条路径上的最大值就可以了,那么我们可以强制其中一个为最大值,然后判断是否联通,更新答案(也就是将a排序,然后维护1到n中b的最大值就可以了)可以用LCT解决,考虑这个两个节点全部被加入,那么我们用这个b替换掉这条路径上最大的b,就可以了。【代码如下】#include<cstdio>#inc...原创 2019-03-12 07:30:00 · 128 阅读 · 0 评论 -
BZOJ2843: 极地旅行社【LCT+并查集】
2843: 极地旅行社【题目描述】传送门【题解】就是裸的LCT,只要维护Splay中节点的和就可以了,连通性可以用并查集判。【代码如下】#include<cstdio>#include<algorithm>using namespace std;const int MAXN=30005;int n,Q,a[MAXN],fa[MAXN];char ch[M...原创 2019-03-12 16:27:18 · 116 阅读 · 0 评论