
PKU 解题报告
恋上鱼的猫
这个作者很懒,什么都没留下…
展开
-
PKU Ubiquitous Religions(并查集)
http://acm.pku.edu.cn/JudgeOnline/problem?id=2524 题目大意:在大学里假设每个学生都有各自自己不同的信仰,现在题目给你成对出现的数据,标志着这两个人信仰是一样的,现在你要做个调查,调查下学校里到底有多少种不同的宗教信仰。 解题思路:并查集做,因为数据量太大了。 #include #define size 50001原创 2009-08-14 12:16:00 · 556 阅读 · 0 评论 -
pku 1442 Black Box(优先队列)
<br />http://acm.pku.edu.cn/JudgeOnline/problem?id=1442<br /> <br />题目大意:给你两个序列a,b,一个长度为N,一个长度为M。b中每个元素值c表示a序列中前c个数中,已经输入进来了,求输入进来的C个数中第k小的数。这个k就是c在序列b中的下标。<br /> <br />解题思路:优先队列做它。定义一个极大优先队列,用来保存前k个小的数,定义一个极小优先队列,用来保存后面剩下的c-k个数。最后输出极大队列的top值就好。<br /> <br原创 2010-08-15 10:29:00 · 1130 阅读 · 0 评论 -
pku 2250 Compromise(LCS)
<br /> <br />http://acm.pku.edu.cn/JudgeOnline/problem?id=2250<br /> <br />题目大意:给你两段话,叫你找出它们最长公共子序列<br /> <br />解题思路:LCS,只是字母换单词罢了<br /> <br />#include <stdio.h>#include <string.h>struct words { char s[35];}a[105],b[105];int dp[105][105];int原创 2010-08-13 19:58:00 · 678 阅读 · 1 评论 -
pku 2239 Selecting Courses(二分图最大匹配)
<br /> <br />http://acm.pku.edu.cn/JudgeOnline/problem?id=2239<br /> <br />题目大意:一个学生想要选课程去上课,一周有7天上课,每天都是12节课。一门课程每天只会上一次,并且每一天上课的班级并不一样。这个学生可以自由选课去哪个班级去上课,只要时间不冲突就好,问你他最多可以选几门课。<br /> <br />解题思路:课程作为X集合,(day-1)*12+班级号 作为Y集合,表示某个时间段,上某门课程。然后套模板就是了<br /> <原创 2010-08-13 16:52:00 · 997 阅读 · 0 评论 -
pku 3259 Wormholes(SPFA判负环)
<br /> <br />http://acm.pku.edu.cn/JudgeOnline/problem?id=3259<br /> <br />题目大意:一个famer有一些农场,这些农场里面有一些田地,田地里面有一些虫洞,田地和田地之间有路,走一条路有时间花费,虫洞有这样的性质: 时间倒流。如果你走的是虫洞路径,那么时间花费为负值,问你这个农民找出一条路径能看到他自己,也就是说,有没有这样一条路径,能利用虫洞的时间倒流的性质,让这个人能在这个点出发前回去,这样他就是能看到他自己了<br />原创 2010-08-16 16:09:00 · 1796 阅读 · 1 评论 -
pku 1469 COURSES(二分匹配)
<br /> <br />http://acm.pku.edu.cn/JudgeOnline/problem?id=1469<br /> <br />题目大意:学生要选修选修课,给你P个选修课,每个选修课如果都被选中了,就输出YSE,否则NO。<br /> <br />解题思路:二分匹配入门题<br /> <br />#include <iostream>#include <vector>#include <string.h>#include <stdio.h>#define Max 100原创 2010-08-06 09:26:00 · 750 阅读 · 0 评论 -
PKU 2549 Sumsets
<br /> <br /> <br />http://acm.pku.edu.cn/JudgeOnline/problem?id=2549<br /> <br />题目大意:给你n个不同的数,问能不能构成一个等式 A+B+C=D,可以的话,输出最大的D值。<br /> <br />解题思路:题目变型为A+B = D-C,A+B枚举求和,然后建hash表,之后枚举D-C值,查表。<br /> <br />#include <vector>#include <iostream>#include <std原创 2010-07-28 19:50:00 · 815 阅读 · 0 评论 -
PKU 2503 Babelfish
<br /> <br />http://acm.pku.edu.cn/JudgeOnline/problem?id=2503<br /> <br />题目大意:一个人从一座城市搬到了另一个城市,当地的人说好几种语言,他虽然有词典,但是也没办法很快理解,现在要你写个程序,帮他把其他语言翻译成英语,如果词典里查不到就输出 eh<br /> <br />解题思路:BKDRHash 哈希表来做(做的第一道哈希题)<br /> <br />#include <iostream>#include <vector>原创 2010-07-27 17:15:00 · 1186 阅读 · 0 评论 -
PKU 1113 wall(凸包)
http://acm.pku.edu.cn/JudgeOnline/problem?id=1113 题目大意:一个国王想把自己的城堡边缘给围起来,并且呢,在城堡的外围还要再建一个圆栅栏把城堡围里面,现在就是要你求怎么样围才最省。 解题思路:凸包问题,求出凸包的边缘长度,再加上圆的周长就是所得了。 注:这道题,我在POJ过不了,始终是WA,上其他的OJ用以下代码就可以过原创 2009-08-27 13:04:00 · 1229 阅读 · 0 评论 -
PKU 2236 Wireless Network(并查集)
http://acm.pku.edu.cn/JudgeOnline/problem?id=2236 题目大意:亚洲海底地震,使得所有的电脑都坏了并中断了联系,现在有一群维修人员被派往现场修复。他们在那边会做两件事,1.“O”代表要修复某编号的电脑,“S”代表要测试两台编号不同的电脑是否可以连通,测试成功,则输出成功,否则失败。但是两台电脑之间如果要直接连通的话,它们之间的距离不能够超原创 2009-08-14 21:04:00 · 870 阅读 · 0 评论 -
pku 1151 Invitation Cards(单源最短路径 SPFA)
<br /> <br />http://acm.pku.edu.cn/JudgeOnline/problem?id=1511<br /> <br />题目大意:在有向图中有n个结点,求从开始结点S(题中默认为1)到各其它各结点的距离和dist1和其它各结点到起点S(1)的距离和dist2之和sum最小.<br /> <br />解题思路:这道题点跟边都非常的大,达到1000000,所以就不能用Dj算法啦(因为只会朴素的Dj),就用SPFA来做啦,构建两个邻接表,正向的list1,反向的list2。起点到其他原创 2010-08-16 22:39:00 · 907 阅读 · 0 评论