POJ题解
文章平均质量分 68
catch_catch
这个作者很懒,什么都没留下…
展开
-
POJ 3268 Silver Cow Party bfs最短路
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/D题意:cows要举办一个party,地点选择其中一个cow的位置,其他cow去参加,需要沿着单向边走一个来回,求他们的最小来回路程中的最大的值。刚开始天真的写了N多个DFS,然后各种WA,只好放弃了,然后改写BFS,然后AC,然原创 2015-04-18 22:29:05 · 479 阅读 · 0 评论 -
POJ 1182 食物链 并查集
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66964#problem/E题意:求假话的数量。怎么说呢?题目就是会了不难,难的不会!!在网上了看了N多题解,绝大多数都是用一个什么公式来更新的,感觉那个真的不太适合我,说以也就没管了。偶然在白神的一本上看到了此题的另一种解法,可以说是通俗易懂,nice!上正文:思路原创 2015-04-21 17:47:35 · 557 阅读 · 0 评论 -
POJ 2236 Wireless Network 简单并查集
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66964#problem/A题意:由于地震计算机系统坏了,现在,逐个修复某些电脑,并给出一些询问,问两个计算机是否可以通信。虽然题目简单,但是能够一次AC感觉已经不错了,代码:#include#include#includeusing namesp原创 2015-04-21 22:43:31 · 400 阅读 · 0 评论 -
POJ 1287 Networking Prim模型
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66965#problem/B思路:题意简单,直接Prim求解。代码:#include#include#include#define INF 0x7fffffffusing namespace std;int Map[60][60],dis[60],v原创 2015-04-26 22:12:17 · 594 阅读 · 0 评论 -
POJ 2031 Building a Space Station Kruskal最小生成树
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66965#problem/C题意:大意是,给定一些空间站,把空间站当作球来处理,然后给定每个空间站的描述,球心坐标和半径,求两两连通的最小代价。两个求相连通的条件是:1:相互相连或是重叠(直接相连)2:通过第三者相连(间接相连)思路:把直接相连的用并查集预处理就行原创 2015-04-26 22:56:05 · 667 阅读 · 0 评论 -
POJ 1611 The Suspects 并查集问题
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66964#problem/B题意:SARS问题,把与0号属于同一个集合的 Suspect 计算出来。题意很简单,不过又犯了老错误,把两个点是否属于同一个集合,用pre[i]==pre[j]来判断了,导致WA,看来得牢记:并查集的两个点是否属于同一个集合用的是find,不是原创 2015-04-21 23:41:50 · 459 阅读 · 0 评论 -
POJ 1679 The Unique MST Pim算法求解
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66965#problem/K题意:给定一个无向图,判断该图的最小生成树(MST)是否唯一。思路:刚开始想的是学会Kruskal就好了,Prim算法没必要再写了吧,但是,这题明显用Prim简便了许多,所以有看了下Prim算法,算是对Prim彻底理解了。根据Prim求最小生成原创 2015-04-25 23:57:17 · 690 阅读 · 0 评论 -
POJ 2823 Sliding Window 滑动窗口 单调队列优化
题目链接:http://poj.org/problem?id=2823灵感来源:单调队列初步为什么说是灵感来源呢,看了紫书上的代码,知道了单调队列的意思,而且有两种解法,一种是用C++的set,复杂度是O((N-k) log k),然后百度到了此题,为了方便用来set,然后果断TLE。就试着写单调队列,可是却写不出来。。百度到这篇博客后,第一次随便过了一遍,没怎么看懂。没看了。今天再次百度原创 2015-05-10 18:50:02 · 1291 阅读 · 0 评论 -
POJ 2823 Sliding Window 线段树求解
题目链接:http://poj.org/problem?id=2823题意:就是求区间最小值。此题,显然可以用线段树过,但是,知道此题是学习滑动窗口时。此题用滑动窗口做的话比较省代码,内存和时间。但是要是真正到了赛场上,可能真的不太能想起用滑动窗口,而且对单调队列也不是很熟悉。写一下线段树也还是不错的。代码:#include#include#include#defin原创 2015-05-10 19:52:32 · 599 阅读 · 0 评论 -
POJ 3616 Milking Time 排序Dp
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=68966#problem/R题意:给定一个区间和若干个子区间,求没有重叠区间的最大和值。这题没啥说的,直接排序一下,就变成类似于紫书上所说的DAG上的最长路问题了。代码:#include#include#include#define maxn 101原创 2015-05-03 18:01:19 · 566 阅读 · 0 评论 -
POJ 3468 A Simple Problem with Integers 线段树维护动态区间和
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66989#problem/C题意:给定一个数组,然后动态修改某些区间的值,并询问某些区间的和。思路:既然是线段树专题,那就用线段树了。这是一个标准的线段树维护动态区间和问题,很显然,我们需要维护的是这些连续区间的和,当我们对某个子区间进行add操作时,必然会对这个子区间的原创 2015-04-28 13:14:45 · 510 阅读 · 0 评论 -
POJ 1458 Common Subsequence 最长公共子序列问题
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=68966#problem/L题意:求两个字符串的最长公共子序列的长度。用dp[i][j]表示:在两个字符串中的位置,则状态转移方程为:dp[i][j]=max(max(dp[i-1][j],dp[i][j-1]),dp[i-1][j-1]+1(if(a[i]==b[j])原创 2015-05-03 16:14:17 · 467 阅读 · 0 评论 -
POJ 3186 Treats for the Cows 简单dp
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=68966#problem/O题意:给定一个数组,每次只能从首或位取一个数,每个数的权值为取该数的序数,求所能使所有数乘上他的权值的和值最大,并求出该最大和值。虽然说是简单dp,但是,还是百度了一下,说是枚举数组的位置,然后就很容易想到状态转移方程了。思路:用dp[i]原创 2015-05-04 16:24:01 · 663 阅读 · 0 评论 -
POJ 1258 Agri-Net Prim算法模型
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66965#problem/I题意:求连通的最小fiber,就是MST的叙述。由于是以表格的形式给出,所以用Prim比较方便,当然用Kruskal也不麻烦。代码:#include#include#include#define INF 0x7ffffff原创 2015-04-26 18:00:08 · 500 阅读 · 0 评论 -
POJ 1751 Highways Kruskal求解
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66965#problem/H题意:修高速公路问题,求最小连通造价,但是会给出一些已经修好了的边,求需要修剪的边。思路:这题和POJ 2412 Constructing Roads差不多,用Kruskal逐条加边,只是把Kruskal的求sum值改成存储边值就好了。原创 2015-04-26 01:18:20 · 590 阅读 · 0 评论 -
POJ 2421 Constructing Roads Kruskal求解
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66965#problem/D题意:给定一些村庄及边,然后给出一些,已经存在的边,求最小生成树。思路:题意简单,根据Kruskal思路,先把已经存在的边加进去,然后就是原样的Kruskal了。代码:#include#include#includeus原创 2015-04-26 00:23:20 · 515 阅读 · 0 评论 -
POJ 2492 A Bug's Life 并查集维护类别
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66964#problem/J题意:就是输入两个数,判断这两个数是不是同一个性别。思路:和食物链问题一个思路,而且和食物链相比,只有两个类需要维护,所以简单了许多。食物链题解:http://blog.csdn.net/i_am_a_winer/article/detai原创 2015-04-22 23:46:06 · 497 阅读 · 0 评论 -
POJ 3660 Cow Contest DFS求解
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/H题意:给出M组两个牛之间的关系,然后判断有几个牛之的排名可以唯一确定。看到有人说,这是一个传递闭包问题,原来传递闭包就是长这个样子啊!难道指的是,数学上的传递性吗?其实此题思路还是比较简单的,就是求出某个点的前驱后驱的点的个数之和是原创 2015-04-19 20:48:30 · 489 阅读 · 0 评论 -
POJ 1502 MPI Maelstrom BFS最短路
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/G题意:看到这么长的题目也是醉了,上面那么长一段对话,根本没读懂,但是并不影响解题,题意就是,给定n个点之间的传输时间,传输是双向的,求数据从第一个点传遍每一个点所需要的最小时间,输入方式为邻接矩阵输入。典型的单源点最短路代码:#in原创 2015-04-19 16:57:31 · 655 阅读 · 0 评论 -
POJ 1860 Currency Exchange BFS最短路
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/E题意:给定N个货币转换点,以及转换的汇率和手续费,问是否可以经过如干转换后,使当前的货币数量增加。英语太渣,看了别人的题解才懂的。思路:我也不知道什么方法,只知道这题是要判断正环的存在,因为只要正环存在,就能够沿着这个正环无限走下去,是货币增加原创 2015-04-19 14:02:30 · 645 阅读 · 0 评论 -
POJ 3259 Wormholes BFS求解
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/F题意:没读懂,copy下别人的:一个famer有一些农场,这些农场里面有一些田地,田地里面有一些虫洞,田地和田地之间有路,虫洞有这样的性质: 时间倒流。问你这个农民能不能看到他自己,也就是说,有没有这样一条路径,能利用虫洞的时间倒流的性质,让这原创 2015-04-19 16:01:21 · 408 阅读 · 0 评论 -
POJ 1308 Is It A Tree? 并查集求解
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66964#problem/N题意:给定一些箭头,判断是否能够形成一棵树。思路:主要是判断度和环。这题出在并查集专题,说明可以用并查集求解。和Kruskal求最小生成树一样,这里主要用并查集来判断环的情况。但是还需要一些额外入度判断。也就是说,每次加入边a,b时,b只有根节原创 2015-04-23 12:42:50 · 421 阅读 · 0 评论 -
POJ 1733 Parity game 离散化+带权并查集
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66964#problem/H题意:给定一系列关于连续区间的1的个数的奇偶性描述,判断第一次出现矛盾的位置。思路:有了POJ 3038:http://blog.csdn.net/i_am_a_winer/article/details/45202985 的基础,这题就比较好原创 2015-04-23 22:49:07 · 630 阅读 · 0 评论 -
POJ 2240 Arbitrage 最短路正环存在问题
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/I题意:Arbitrage,意思为套利交易:有多个汇率兑换点,问是否存在这样一中情况:把某种货币经过若干转换后在换回本币,使本币的数量增加?题解:这题很显然就是正环存在问题,只是,我们并不知道,哪些点包含于正环之中,那么我们枚举就行了,顺原创 2015-04-20 14:27:24 · 681 阅读 · 0 评论 -
POJ 1511 Invitation Cards SPFA最短路问题
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/J题意:给定一个起点,求其他点到起点和起点到其他点的最短距离的和的总和值。和POJ 3268 Silver Cow Party差不多。思路:用SPFA求出单源点最短距离即可,最后求出总和值就好了。不只是我理解错了还是咋的,题目中的sum,我还原创 2015-04-20 18:44:55 · 404 阅读 · 0 评论 -
POJ 3159 Candies 栈模拟SPFA
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/K题意:给出一个约束差分系统,求最短路,现在才明白什么叫差分约束系统。。。。不知道为什么栈模拟能够AC,而队列模拟却不能?也许这要看出题人给出的数据了,如果出题人要故意卡队列版SPFA,那又有什么办法呢。如果用栈模拟+vector,还是TLE原创 2015-04-20 22:00:27 · 557 阅读 · 0 评论 -
POJ 1797 Heavy Transportation Kruskal并查集求解
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/C题意:给定起终点,求出在连通起终点的所有路径中的最大Weight值。挂在最短路专题,但是感觉用最小生成树求解最合适了。此题和POJ 2253几乎一模一样,这是把排序方向改了。由于刚做完POJ2253,此题就一次性过了。代码:原创 2015-04-16 19:59:16 · 450 阅读 · 0 评论 -
POJ 2253 Frogger Kruskal最小生成树求解
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=66569#problem/B题意:给定起点和终点,求从起点到终点的所有路径中,所需想最小跳跃范围。此题在最短路的专题,但是,拿到此题第一想到的还是:把边值排序,然后依次加入加入最小边,起点和终点一旦连通,那么解就是这条边了,值的注意的是,此题需要注意精度的处理,必原创 2015-04-16 19:22:17 · 690 阅读 · 0 评论 -
PKU 1401 Factorial 有一个计算公式
题目链接:http://poj.org/problem?id=1401题意:求N!的末尾0的个数。思路:这算是一个数学公式求解型的问题。方法是,给定一个数N,结果就是: [N/5]+[N/25]+[N/125]+............+[N/(5^k)],其中5^k为不大于N的最大的数。具体原理自行百度即可。代码:#includeusing namespace std;i原创 2015-05-04 22:57:09 · 450 阅读 · 0 评论