并查集
文章平均质量分 55
ZigZagK
一个蒟蒻。
展开
-
路径压缩&带权并查集
并查集的一些整理。原创 2017-04-02 23:44:35 · 1090 阅读 · 1 评论 -
【穷举+并查集】BZOJ1050(HAOI2006)[旅行comf]题解
BZOJ1050题解。原创 2017-06-30 09:36:09 · 818 阅读 · 1 评论 -
【并查集+LCT维护生成树】BZOJ3669(Noi2014)[魔法森林]题解
BZOJ3669题解。原创 2017-06-16 09:14:59 · 819 阅读 · 1 评论 -
【可持久化并查集】BZOJ3674[可持久化并查集加强版]题解
题目概述有 nn 个点和 mm 个操作,操作有: 合并两个点。 回到第 kk 次操作。 判断两个点是否联通。 解题报告题目描述(题目名称)就是让你实现一个可持久化并查集。好像没有这种操作?由于我们会发现并查集就是个数组,所以我们可以用主席树实现可持久化数组。然后就好了……我就是在水博客……网上有些说不能用路径压缩,实际上是可以的,只不过空间有点大,看代码吧QAQ。示例程序#include<cstdi原创 2017-09-17 16:19:55 · 579 阅读 · 0 评论 -
【并查集跳跃访问+树状数组】2017.3.1杂题[平方根]题解
题目概述给出一个n个元素的数列,并给出m个操作,操作有两种类型。0 x y:将x~y中的所有元素都取平方根的整数部分;1 x y:求x~y中所有元素的总和。解题报告用计算机算一下,会发现2^63-1开平方根6次就会变成1,而变成1之后再怎么开平方根都是1!所以说每个数最多开平方根6次,一旦变成1,这个数就可以无视了。怎么样能做到无视?用并查集!father[i]表示离i最近的不为1的数。对于x~y的原创 2017-03-02 20:14:19 · 577 阅读 · 0 评论 -
【离线+并查集按秩合并】UOJ14(UER #1)[DZY Loves Graph]题解
题目概述给出 nn 个点 mm 个操作,操作如下: 加入 aa 到 bb 长度为 ii ( ii 是该操作的标号)的边。 删除边权前 kk 大的边。 返回到 i−2i-2 状态。 求每次操作后最小生成树的权值。解题报告刚开始看成第k大的边,然后……回退?可持久化啊!其实这道题用离线会非常简单……我们先考虑没有返回操作的情况,由于边权从小到大,所以每次删除就是删除最近的 kk 条边,又因为每条边只会被原创 2017-10-12 21:44:41 · 357 阅读 · 0 评论 -
【带权并查集】BZOJ1202(HNOI2005)[狡猾的商人]题解
题目概述调查一位商人的账本,账本上记录了 nn 个月以来的收入情况。所谓一段时间内的总收入,就是这段时间内每个月的收入额的总和。共看了 mm 次账本,只能看某段时间内账本上记录的收入情况,并且只能记住这段时间内的总收入。根据记住的这些信息来判断账本是不是假的。解题报告带权并查集套路题,每次多出来一条信息 (x,y,z)(x,y,z) 可以看做是 x−1x-1 向 yy 连边,且 Sy−Sx−1=zS原创 2017-12-02 11:00:29 · 319 阅读 · 0 评论 -
【LCT+并查集】BZOJ2959[长跑]题解
题目概述 CHNJZ可以在 nn 个地方虐场,每次虐场可以踩若干个人。一个地方的人被踩后就不能再踩了(心态已爆炸)。 有 mm 个事件:1.地点 xx 到地点 yy 新建了一条边。2.地点 xx 能踩的人变成了 yy 。3.询问从 xx 到 yy 最多能踩多少人。 解题报告 显然是动态树问题,可以用LCT解决。由于图中会出现边双,不能重复计算,所以需要将边双缩点。 考虑合并 xx 到原创 2018-01-17 16:24:28 · 495 阅读 · 0 评论