
并查集
sdjzping
这个作者很懒,什么都没留下…
展开
-
小希的迷宫
点击打开链接、、、标记问题需注意runtime error 解决方案,将tmp[]数组开大即可,因为tmp中数可能重复,导致数组越界简单的并查集问题,一直runtime error,开始标记哪个数出现过,用tmp[]数组把所有点记录下来,再挨个判断,if(set[tmp[i]]==tmp[i]) count++;ac的代码是将tmp[]原创 2013-01-22 11:46:56 · 675 阅读 · 3 评论 -
uva 11987 - Almost Union-Find(并查集)
1、http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=66&page=show_problem&problem=31382、题目大意;给定一些操作:1 a b是合并两个数a b(直接用merge(a,b))2 a b是将a从原来所在集合中删除,将a移动到b所在的集合中(dele原创 2013-04-15 20:28:41 · 1614 阅读 · 0 评论 -
find the most comfortable road(并查集加贪心)
点击打开链接啊啊啊、、终于有道题一遍ac啊,激动。。。。。 1、题目大意、找出一条城市间的最舒适的路径每个寻路要求打印一行,仅输出一个非负整数表示最佳路线的舒适度最高速与最低速的差。如果起点和终点不能到达,那么输出-1。 2、思路:贪心加并查集(判断是不是联通)3、题目find the most comfortable roadTime Limit: 1000原创 2013-01-23 16:26:45 · 1691 阅读 · 0 评论 -
畅通工程
简单的并查集点击打开链接1.题目:畅通工程Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 19105 Accepted Submission(s): 9836Problem Description某省调查城镇交原创 2013-01-22 10:20:31 · 432 阅读 · 0 评论 -
hdu 2818 Building Block(并查集,输出一元素下边有多少)
点击打开链接http://acm.hdu.edu.cn/showproblem.php?pid=2818简单并查集,只是注意输出的是x下边有多少元素1、题目大意:john 正在玩积木,有N个积木编号为1、、、N,分成N堆,每堆只包含一个积木,然后做P次操作,操作分为2种,M X Y:把包含X的一堆放到包含Y的一堆上,如果XY同在一堆上,不做处理C X:计算出X积木下边有多少个积原创 2013-01-31 21:01:26 · 1712 阅读 · 0 评论 -
hdu 3047 Zjnu Stadium(带权并查集)
点击打开链接http://acm.hdu.edu.cn/showproblem.php?pid=30471、题目大意:有一个体育馆,座位呈环状,想象下,貌似体育馆都是这样的,每一列有300个座位,按逆时钟方向编号为1~300,假设行数无穷大。某一天,有N个人(编号为1~N)来到这个体育馆看一场赛事,主办方提出了M个要求,要求的格式是"A B X",表示的是,假设A坐在编号为i的列,则B原创 2013-01-30 15:14:43 · 2283 阅读 · 1 评论 -
hdu 3038 How Many Answers Are Wrong (带权并查集)
点击打开链接http://acm.hdu.edu.cn/showproblem.php?pid=3038跟上题带权并查集一样1题目:How Many Answers Are WrongTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(原创 2013-01-30 20:22:15 · 738 阅读 · 0 评论 -
hdu 3461 Code Lock(并查集+二分求幂)
点击打开链接1、题目大意:给定由N个字母组成的密码锁,如【abcdef】每一位字母都可以转动,转动该字母时,将变成它的下一个字母,如‘a'转动后是b,x转动后是y,接着给定M个区间,每次转动给定区间内的所有字母,如密码锁【abcdef】,给定区间【1,3】转动这个区间一次后变为【bcddef】;注意【1,3】,【3,5】跟【1,5】不同,这会有三种不同的密码锁,因为3重叠,操作了2原创 2013-01-29 12:22:30 · 2181 阅读 · 0 评论 -
Pseudoforest (并查集处理回路问题)
点击打开链接http://acm.hdu.edu.cn/showproblem.php?pid=33671、题目大意: 求一个图的最大联通子图,要求每个联通分量最多只有一个环,且所求的边的权值之和最大,输入包括多组样例,每个样例第一行包含n/m两个整数,分别代表图中顶点的个数,边的个数。接下来的m行,每行有三个整数,分别表示一条边的起点和终点及权值,不存在圈不存在重复边,输入0原创 2013-01-29 17:39:51 · 1136 阅读 · 0 评论 -
hdu 1558 Segment set(并查集+计算几何线段相交)
点击打开链接用到的计算几何中的内容至今不大懂,目前练习并查集,以后待续、、、、 1、题目大意:给你一些操作,P后边输入四个值,分别代表一条线段的起点、终点坐标,当输入Q时,后边输入一个整形值K,输出第k条线段所在的集合中包含的线段的个数2、思路:用并查集做当输入P时,判断后边输入的线段的起点和终点时,判断跟之前的线段有没有相交,如果有相交,就merge()合并,如果原创 2013-01-28 21:04:07 · 1746 阅读 · 0 评论 -
True Liars (并查集+dp,待续、、)
点击打开链接看了一天了,终究没看会,纠结中、、、、,网上代码拯救中、、 1、题目大意:给出p1+p2个人,其中p1个是好人,p2个是坏人。然后有一些关系 ,a说b是好人(坏人).其中没有矛盾的,判断是否有唯一解判断哪些人是好人,哪些人是坏人。其中比较重要的是,好人总说真话,坏人总说假话。那么如果一个人说另一个人是好人,那么如果这个人是好人,说明 对方确实是好人,如果这个是坏原创 2013-01-26 10:49:48 · 831 阅读 · 0 评论 -
Junk-Mail Filter(并查集,删除结点,虚父节点)
点击打开链接1、题目大意、:给定一些关系,M开头的是2者之间有关系,s开头的是要删除此节,需注意只是删除此节点,不删除与此节点关联的所有关系,需要虚父节点,2、第一遍错了,runtime erro,改正,数组开小了3、题目:Junk-Mail Filter Time Limit : 15000/8000ms (Java/Other) Memory Limit : 327原创 2013-01-24 11:31:18 · 2267 阅读 · 0 评论 -
A Bug's Life (并查集,同性恋问题,注意处理性别)
点击打开链接1、题目大意:给定一些关系,判断是不是存在同性恋的关系,比如说关系是:1 22 31 3结果会输出存在同性恋关系,因为12说明12是异性,23说明23是异性,则可以推出13是同性,而下一行13说明13是异性,相矛盾,所有输出对教授的研究存在怀疑2、思路:if(fx==fy)说明x和y具有相同的父节点,即属于同一个集合,则可以断定是同性恋,else原创 2013-01-24 19:32:46 · 803 阅读 · 0 评论 -
hdu 3172 Virtual Friends(简单并查集)
点击打开链接1.题目大意:网上交友,计算朋友间都有关系的最多人数,用并查集做,2,wrong answer的原因:1、有多组样例while(scanf("%d",&t)!=EOF) { while(t--) { } }2、超时错在用charchange()给出每个人对应的数字编号,改正方法用map;3/超时解决方式原创 2013-01-23 11:13:51 · 3278 阅读 · 4 评论 -
More is better(并查集注意节约时间,超时)
点击打开链接错:1、超时,解决方案,if(num[fx]>num[fy]) { int t=fy; fy=fx; fx=t; } set[fx]=fy;2、wrong answer 错在max赋值应该是1,错成-1,没有考虑所有点都不联通的情况1原创 2013-01-22 21:00:52 · 922 阅读 · 0 评论 -
食物链
1、A - 食物链参考:http://blog.youkuaiyun.com/hqd_acm/article/details/5729849Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & %I64uSubmit StatusDescription动物王国原创 2013-04-20 18:48:04 · 640 阅读 · 0 评论