码迷,mamicode.com
首页 > 其他好文 > 详细

并查集

时间:2017-11-25 17:24:08      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:连续   开始   操作   持久化   bzoj   区间   表示   相交   strong   

1、按秩合并

  h[] 表示容纳水平。

  可撤销。

  「HDU 5453」给图(1e5),问删某点后是否是二分图。

2、路径压缩

  访问唯一后继结构(序列、树),若访问过一次,则不再访问。

  「BZOJ 2054」长度为 n(1e5) 的序列,m(1e5) 次区间染色,求每个区间的最后颜色。

  「BZOJ 1576」

3、双向链表

  本质也是路径压缩。

  「BZOJ 3211」n(1e5) ,区间开方,区间求和。

4、妙用

  「BZOJ 1854」n(1e6) 对 {a, b} ,每对中选择一个,求从 1 开始的最长值域连续段的长度。

  「BZOJ 4423」给网格图(1e3 * 1e3),q(1e6) 次删边问点的连通性。

  「SCOI 2016」有多少个无前导零的 n(1e5) 位数,满足 m(1e5) 个限制条件 a[x..y] = a[l..r] 。

5、带权并查集 / 关系并查集

  「BZOJ 3376」30000 个方块,q(1e5) 次操作:

  M x y  将标号为 x 的方块所在的堆, 叠到标号为 y 的方块所在的堆之上。

  C x  求标号为 x 的方块下有多少个方块。

  「BZOJ 2303」方格染色

  n * m(1e6) 的方格中,每个格子填 0 或 1 ,任意一个四方格中有 1 个 1 或者 3 个 1 。已知某些格子中填的数,求有多少种合法的填法。

6、Kruskal 重构树

  在不超过 w 的边的作用下,x 所在连通块的相关信息。

  离线做法,并查集信息可持久化,Kruskal 重构树 / 我的做法,我的做法的优点。

  「BZOJ 4668」冷战

  「AGC 002D」

  「BZOJ 3551」Peaks

7、离线 LCA

  树剖比它跑得快,可以借鉴思想。

  「TH 1521」给 n(1e5) 个点的树,m(1e5) 条路径,路径有价值 w(1e3) ,求若干条不相交的路径,最大化价值总和。

8、LCT

并查集

标签:连续   开始   操作   持久化   bzoj   区间   表示   相交   strong   

原文地址:http://www.cnblogs.com/Sdchr/p/7894894.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!