并查集
AEP_WYK
这个作者很懒,什么都没留下…
展开
-
POJ-1182 食物链【带权并查集】
题目链接:http://poj.org/problem?id=1182解题思路:这道题是并查集题目中的经典。。。而且比普通并查集提高了一个档次,下面在基础并查集的前提上讲解并查集的真正用法。基础回顾:find()函数找根结点的两种写法如下:第一种递归:int find(int x){ return x == pre[x] ? x : find(pre[x]);}...转载 2018-09-19 11:13:28 · 151 阅读 · 0 评论 -
hdu 1272 小希的迷宫(并查集)
这题只要判断一下有没有环,并且要保证只有一个集合。还有一个坑就是:x==0 y==0, 输出yes。因为没有点,也是符合要求的。我这里没有用压缩路径,据说这题压缩路径会爆栈,如果爆栈的话,find里面换用循环的方式写就行了。附上ac代码:#include<iostream>#include<algorithm>#include<cstdio&g...原创 2018-09-19 22:13:22 · 97 阅读 · 0 评论 -
再做食物链【扩展并查集】
这题很明显总共有三种关系:1、x与y同类2、x吃y3、y吃x所以这时候,如果只有一个域就不能表示这3种关系了,比如将(x,y)合并,那么这时候是x,y哪种关系呢? 所以这时候我们就要将这一个点扩展为3个点。 同类域,吃域,被吃域。具体看代码吧:#include<iostream>#include<stdio.h>#include<algo...原创 2018-11-18 19:01:33 · 141 阅读 · 0 评论