![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并查集
quinwu-
这个作者很懒,什么都没留下…
展开
-
uva 10608 - Friends (并查集)
/* 简单的并查集题目,其实就是求图的最大连通块的顶点的个数, 要注意的一点是。root[i] != FindSet(i); 由于并查集单向合并的原因,因此root[i]不一定是i的根节点,FindSet(i)才是! */ #include #include #include using namespace std; const int N = 30010; int原创 2013-11-07 20:47:40 · 530 阅读 · 0 评论 -
poj 2492--A Bug's Life(并查集,向量偏移)
并查集,向量偏移再来一发。 这个题就比上次那个食物链的要简单了。 跟龙帮虎帮的那个是一样的。 题目意思好变态:告诉两个虫子是异性,告诉你跟多的节点的信息,问你有没有同性恋的一对虫子。 /* 两种情况的向量偏移的题目。 */ #include #include using namespace std; const int N = 2010; int father[N]; in原创 2013-11-27 22:55:15 · 631 阅读 · 0 评论 -
poj 1182--食物链(并查集,向量偏移)
并查集中特殊的向量偏移问题, T^T一开始做过那个龙帮虎帮的题目(poj),当时也就是简答的看了下,没有认真的学习这方面的问题,这个题就又不会了。 http://hi.baidu.com/tomspirit/item/d1f2a19b2aaf36d27a7f0158 这个博客里对于向量偏移的原理讲的很清楚。/* 并查集,向量偏移 rank[i]信息是i点跟当前并查集根节点原创 2013-11-27 22:44:48 · 629 阅读 · 0 评论 -
poj 1733 Parity game (并查集+向量偏移)
/* 并查集的向量偏移。把并查集看作是一片森林不断合并的过程。 用map实现hash来对数据进行离散化 rank[i]表示i到根节点的区间中的1的个数是奇数还是偶数。1表示技术,0表示偶数。 这块用到前缀的思想。 要注意的是,对区间合并边界的处理。 */ #include #include #include using namespace std; cons原创 2013-11-29 23:22:07 · 553 阅读 · 0 评论 -
POJ 1611 The Suspects(并查集)
经典的并查集题目。著名的非典问题 = = 。PS:最近H7N9也挺厉害的。各位小心#include using namespace std;int father[30005],num[30005];int main(){ void Init_set(int x); int Find_set(int x); void Union_set(int a,int b); int原创 2013-07-15 17:34:03 · 617 阅读 · 0 评论