随笔分类 -  数据结构—并查集

摘要:http://acm.hdu.edu.cn/showproblem.php?pid=5441 题意:给出一个图,每条边有一个距离,现在有多个询问,每个询问有一个距离值d,对于每一个询问,计算出有多少点对(x,y)使得在x到y的路径上没有一条边的距离大于d。 思路:只要边距离小于d,那就是可行的,直接 阅读全文
posted @ 2017-11-30 10:31 Kayden_Cheung 阅读(372) 评论(0) 推荐(0) 编辑
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=3673 题意: 思路: 可持久化数组可以用可持久化线段树来实现,并查集的查询操作和原来的一般并查集操作是差不多的,只不过是在线段树上操作。需要注意的是并查集的合并,需要按秩来进行启发式合并。 #incl 阅读全文
posted @ 2017-11-24 08:50 Kayden_Cheung 阅读(240) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4496 题意: 给出n个顶点m条边的图,每次选择一条边删去,求每次删边后的连通块个数。 思路: 离线处理删边,从后往前处理变成加边,用并查集维护连通块个数。其实这题和BZOJ 1015差不多。 阅读全文
posted @ 2017-11-23 19:51 Kayden_Cheung 阅读(196) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=3047 题意: 给出n个座位,有m次询问,每次a,b,d表示b要在a右边d个位置处,问有几个询问是错误的。 思路: 基础带权并查集。 阅读全文
posted @ 2017-11-23 16:54 Kayden_Cheung 阅读(135) 评论(0) 推荐(0) 编辑
摘要:http://hihocoder.com/problemset/problem/1515 题意: 思路: 带权并查集的简单题,计算的时候利用向量法则即可。 阅读全文
posted @ 2017-11-22 22:12 Kayden_Cheung 阅读(370) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1733 题意: 给出一个01串,有多次询问,每次回答[l,r]这个区间内1的个数的奇偶性,但是其中有一些回答是错误的,问到第几个回答时与前面的回答是有矛盾的。 思路: 任意一个区间要么是奇要么就是偶。所有就可以用种类并查集来解决。 因为是区间,所 阅读全文
posted @ 2017-11-22 21:51 Kayden_Cheung 阅读(199) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4313 题意: 给出一棵树,每条边都有权值,其中有几个点是特殊点,现在破坏边还使得这几个特殊点互相不可达,需要使得破坏的边的权值和最小。 思路:解法很妙! 利用并查集,先将每个点分成一个集合,将边按照降序排序,如果 阅读全文
posted @ 2017-11-19 16:45 Kayden_Cheung 阅读(145) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=3038 题意:给出一个区间1~n,有多次询问,每次回答[l,r]这个区间内的数值和,问在这几次询问中有多少次回答是错误的。 思路:如果[l,r]之间的和为sum,这也就是说r-(l-1)=sum。那么用个数组val 阅读全文
posted @ 2017-11-08 20:48 Kayden_Cheung 阅读(156) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=3635 题意: 有n颗龙珠和n座城市,一开始第i颗龙珠就位于第i座城市,现在有2种操作,第一种操作是将x龙珠所在城市的所有龙珠移至y龙珠所在城市,第二种操作是计算x龙珠所在城市y,y城市龙珠个数,以及x龙珠移动的次 阅读全文
posted @ 2017-11-08 19:43 Kayden_Cheung 阅读(165) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1988 题意: 有n个砖堆,一开始每块砖都位于一个堆,现在有2种操作,操作1是将x所在的砖堆放在y所在砖堆上,操作2是计算x砖下面有多少块砖。 思路: 合并的话容易想到用并查集来维护,由于这里还需要计算每块砖下面的砖数,所以并查集需要带权值。 用 阅读全文
posted @ 2017-11-08 19:02 Kayden_Cheung 阅读(134) 评论(0) 推荐(0) 编辑
摘要:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1307 题意: 思路: 可以直接二分答案,然后dfs。 因为标签是并查集,所以我考虑了一下并查集,利用并查集不断向上回溯加负重,居然过了,只能说数据有点水。 阅读全文
posted @ 2017-08-19 21:52 Kayden_Cheung 阅读(196) 评论(0) 推荐(0) 编辑
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1015 题意: 思路:好题啊!!! 这道题目需要离线处理,先把所有要删的点给保存下来,然后逆序加点,这样就把原来的删点变为了加点,加点的话计算连通块就方便的多,具体参见代码。 阅读全文
posted @ 2017-08-10 10:03 Kayden_Cheung 阅读(179) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1182 题意: 动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。 有人用两种说法对这N个动物所构成的食物链 阅读全文
posted @ 2017-04-21 19:38 Kayden_Cheung 阅读(136) 评论(0) 推荐(0) 编辑
摘要:https://vjudge.net/problem/UVA-1664 题意: n个城市形成一棵树,每条边有权值C(i,j)。任意两个点的容量S(i,j)定义为i与j唯一通路上容量的最小值。找一个点,使得它到其他所有点的容量之和最大。 思路: 做法有点类似于最小生成树的Kruskal算法。 先将边按 阅读全文
posted @ 2017-03-29 08:58 Kayden_Cheung 阅读(333) 评论(0) 推荐(0) 编辑
摘要:https://vjudge.net/problem/UVALive-3027 题意: 有n个结点,初始时每个结点的父节点都不存在。你的任务是执行一次I操作和E操作,格式如下: I u v:把结点u的父节点设为v,距离为|u-v|除以1000的余数。输入保证执行指令前u没有父节点。 E u:询问u到 阅读全文
posted @ 2017-03-12 14:26 Kayden_Cheung 阅读(202) 评论(0) 推荐(0) 编辑
摘要:https://vjudge.net/problem/UVALive-3644 简单的并查集题目。 阅读全文
posted @ 2017-03-11 14:40 Kayden_Cheung 阅读(123) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1232 题意:某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。 阅读全文
posted @ 2017-02-10 17:09 Kayden_Cheung 阅读(148) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1856 题意: 王先生想要一些男孩帮助他做一个项目。因为项目相当复杂,男孩越多,越好。当然有一定的要求。王先生选择了一个足够大的房间来容纳男孩。没有被选中的男孩必须立即离开房间。有10000000的男孩在房间号从1 阅读全文
posted @ 2017-02-10 16:12 Kayden_Cheung 阅读(205) 评论(0) 推荐(0) 编辑
摘要:https://vjudge.net/problem/HDU-1272 题意: 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走。但是她设计迷宫的思路不一样,首先她认为所有的通道都应该是双向连通的,就是说如果有一个通道连通了房间A和B,那么既可 阅读全文
posted @ 2017-02-10 15:25 Kayden_Cheung 阅读(238) 评论(0) 推荐(0) 编辑

//目录
点击右上角即可分享
微信分享提示