
并查集
OriginalRecipe
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Junk-Mail Filter HDU-2473 并查集
题目链接:HDU-2473 主要思路: 初始时将所有点有与它的编号+n的点并在一起,合并时照常,删除从一个集合里删除一个点就是给这个点在给一个新的集合。最后统计每个点所在集合的个数即可(编号小于n)。注意要开n*2+m个集合(即fa数组的大小),否则getfa操作会出问题,预处理fa数组也是一样。 AC代码: #include<cstdio> #include<cstr...原创 2018-08-12 13:43:13 · 241 阅读 · 0 评论 -
True Liars POJ - 1417 并查集拓展域+DP
题目链接:POJ-1417 主要思路: 首先你得明白,好人眼中的好人是好人,坏人眼中的好人是坏人,坏人眼中的坏人是好人一个人眼中的好人是和他一样的人。故用拓展域确定其关系,再用DP枚举每一个集合内(一个集合指两个队里的团体)哪个团体是好人。若不可以唯一确定则输出-1. AC代码: #include<cstdio> #include<cstring> #includ...原创 2018-08-18 17:56:20 · 322 阅读 · 0 评论 -
「APIO2011」方格染色 加权并查集
「APIO2011」方格染色 正文: 对于一张图的状态,如果我们存这张图的每一个点。那么空间复杂度是O(n2)O(n^2)O(n2),肯定不行,更不用说时间了。 不断的画图可以发现,如果我们知道了第一行,再知道第二行第一个,我们就可以推出第二行,之后如果知道第三行第一个,就可以推出第三行……也就是我们只要知道一张图的第一列和第一行,就可以知道整张图的状态。 然后我们考虑怎么把mp[i][j]mp[...原创 2019-08-16 10:06:26 · 312 阅读 · 0 评论