并查集
文章平均质量分 75
pmt123456
这个作者很懒,什么都没留下…
展开
-
hdu1232并查集
int find(int x){ if(F[x]==x)return x; else return F[x]=find(F[x]);}路径压缩:每次查找的时候,如果路径较长,则修改信息,以便下次查找的时候速度更快步骤:1、找到根点 2、修改查找路径上的所有节点,将他们都指向根结点#include #include原创 2016-11-25 23:42:06 · 253 阅读 · 0 评论 -
hdu1198(DFS/并查集)
题目链接:Farm Irrigation如左图所示,有11种管道,问给定一个图,最少要挖几个井才能灌溉到所有的管道如右图,至少需要三个井口两种做法DFS和并查集难点在管道接口的判断:将一个块变成四个点,有管道伸出就是1,否则就为0判断两个块是否在该方向管道是想通的 用&就可以了int pipe[][4]={ {1,0,1,0}, {1原创 2016-12-09 18:37:49 · 349 阅读 · 0 评论 -
hdu1272(并查集)
题目链接:小希的迷宫题目分析:本题判断一个无环的无向连通图,可以用并查集来做要求:1、只有一个根节点 2、无环,当输入的一条边的两个端点拥有一个父节点时形成环注意:1、题目中的节点不是连续的,用vis记录出现的结点 2、注意a==b&&b==0时输出yes代码:#pragma warning(disable:4996)#i原创 2017-01-08 17:04:37 · 240 阅读 · 0 评论