并查集
bandiaoz_cjl
这个作者很懒,什么都没留下…
展开
-
AcWing 240. 食物链 边带权并查集
AcWing 240. 食物链 题意 动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。给出他们之间的关系,判断有几句话是假话。每句话的格式如下: 1 X Y ,表示 X和Y是同类 2 X Y ,表示X吃Y 当一句话满足下列三条之一时,这句话就是假话,否则就是真话。 当前的话与前面的某些真的话冲突,就是假话; 当前的话中X或Y比N大,就是假话; 当前的话表示X吃X,就是假话。 输出有几句假话。 解法 考虑边带权并查集。 X吃Y可以转化为 X−Y=1X-Y原创 2020-09-14 17:53:48 · 119 阅读 · 0 评论 -
AcWing 239. 奇偶游戏 并查集,拓展域
AcWing 239. 奇偶游戏 题意 有一个长度为 nnn 仅由0和1组成的序列。有 mmm 个问题和回答:在区间 [li,Ri][l_i,R_i][li,Ri] 内有奇数个或者偶数个 111 。 输出一个整数 kkk ,表示这个01序列满足 1∼k1\sim k1∼k 个回答,但不满足 1∼k+11\sim k+11∼k+1 个回答。如果满足所有回答,则输出问题的总数量。 解法 维护 111 的数量的前缀和的奇偶性 s[i]s[i]s[i] 。 如果区间 [l,r][l,r][l,r] 内有奇数个原创 2020-09-13 22:25:42 · 124 阅读 · 0 评论 -
AcWing 239. 奇偶游戏 边带权并查集
AcWing 239. 奇偶游戏 题意 有一个长度为 nnn 仅由0和1组成的序列。有 mmm 个问题和回答:在区间 [li,Ri][l_i,R_i][li,Ri] 内有奇数个或者偶数个 111 。 输出一个整数 kkk ,表示这个01序列满足 1∼k1\sim k1∼k 个回答,但不满足 1∼k+11\sim k+11∼k+1 个回答。如果满足所有回答,则输出问题的总数量。 解法 维护 111 的数量的前缀和的奇偶性 s[i]s[i]s[i] 。 如果区间 [l,r][l,r][l,r] 内有奇数个原创 2020-09-13 19:58:38 · 224 阅读 · 0 评论 -
AcWing 238. 银河英雄传说 带权并查集
AcWing 238. 银河英雄传说 题意 有 nnn 个战舰和 TTT 指令,指令有两种格式: M i j ,表示第 iii 号战舰所在列保持原序,接在第 jjj 号战舰所在列的后面。 C i j ,表示询问第 iii 号战舰和第 jjj 号战舰之间有多少战舰,如果不在同一列则输出 −1-1−1 。 (N≤3⋅104N\le 3\cdot 10^4N≤3⋅104,T≤5⋅105T\le 5\cdot 10^5T≤5⋅105) 解法 带权并查集模板题。 在并查集维护元素是否在同一个集合的基础上,原创 2020-09-13 15:33:56 · 137 阅读 · 0 评论