![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
POJ题目集
文章平均质量分 52
qq_27255871
作为一个程序媛,我要努力生活【雾
展开
-
【二分】POJ 2109
谁骗我这是贪心TT 大概就是求k的n次方等于p时的k(k到10^9),由于,p的数据到了10^101,n到200,所以直接算估计T ?? 反正看完想到二分,其实数据要是再大点估计我这个二分不行。 网上有三种思路: 1、很自然的,因为觉得数据很大,会去想高精度(可以自己想,或者pow直接double数据还是挺小的)。然后加二分猜数。 2、于是想到转换数学运算:指对互化。用d原创 2015-04-20 14:19:46 · 382 阅读 · 0 评论 -
【模拟】POJ 3087
直达–>POJ 3087 Shuffle’m Up题意:一开始没怎么看明白,注意现是从S2里拿牌放在最底下,再放S1,这样交叉放(我一开始以为是S1和S2随意哪个先放,分别模拟取最小),然后在从中间截一半,下半部给组成新的S1,上半部组成新的S2。然后再交叉洗牌,重复,问达到给出的S12最小的洗牌次数。思路:题意懂了直接模拟就行,无法到达的情况就是某一次洗牌出来的S12和之前出现过的S12重合了,也原创 2016-08-21 14:54:34 · 237 阅读 · 0 评论 -
【BFS】POJ 3414
直达POJ3414 题目大意:两个壶倒水,三种操作,两个桶其中一个满足等于C的最少操作,输出路径。注意a,b互倒的时候能不能倒满,或者还有剩下的。 a->b || b->a || a->0 || b->0 || a->A || b->B (0<=a<=A&&0<=b<=B) 思路:虽说是BFS但是情况就这几种,分别写出来之后判断即可。输出路径可以用递归,我这里用了string来存。#inclu原创 2016-08-21 11:11:27 · 544 阅读 · 0 评论 -
【尺取】POJ 3320
POJ 3320 Jessica’s Reading Problem题意:一本书P页,第i页有ai知识点,问你至少从某一处开始连续要翻多少页才能复习完所有的知识点,不能跨页翻。思路:《挑战程序设计》上的尺取法的经典例题,set用来求出所有不重复知识点的个数,map用来计算是否有新出现的的知识点。 1.左端点s,右端点t,目前复习的知识点num初始化为0; 2.只要有t#include <cstd原创 2016-04-21 18:53:57 · 470 阅读 · 0 评论 -
【DFS】POJ 1321
POJ 1321 棋盘问题 题意:中文题不解释。 思路:经典DP,比较取巧的想法是一行行(按照题目意思一行最多只能放一个)来看,标记一列列。注意考虑到有些行可能不放的情况。/** Sample Input2 1 #. .# 4 4 ...# ..#. .#.. #... -1 -1 Sample Output2 1 **/#include<cstdio> #include<cstring> us原创 2016-04-15 22:34:44 · 407 阅读 · 0 评论 -
【BFS】POJ 3278
POJ 3278 Catch That Cow 题目:你要去抓一头牛,给出你所在的坐标和牛所在的坐标,移动方式有两种:要么前一步或者后一步,要么移动到现在所在坐标的两倍,两种方式都要花费一分钟,问你最小花费时间恰好到达牛所在的地方。 思路:BFS求最优解,移动有三种情况,前后,和移动两倍位置,不过注意的地方是,当牛的坐标比你小,你只能一步步往后倒退,这个需要特判。#include<cstdio>原创 2016-04-15 22:26:35 · 507 阅读 · 0 评论 -
【BFS】POJ 2251
POJ 2251 Dungeon Master 题意:有一个地图,三维,走的方向是上下,左右,前后。问你最小步数从起始点走到出口。 思路:三维的BFS,就是多加一组状态,需要细心(不细心如我就找了半个多小时的错误才AC)/** Sample Input3 4 5 S.... .###. .##.. ###.###### ##### ##.## ##...##### ##### #.### ###原创 2016-04-15 22:19:06 · 224 阅读 · 0 评论 -
【DP】POJ 2385
题意:又是Bessie 这头牛在折腾,这回他喜欢吃苹果,于是在两棵苹果树下等着接苹果,但苹果不能落地后再接,吃的时候不算,假设他能拿得下所有苹果,问你在这时间内能拿到的最多的苹果是多少? 想法:我的想法经过了九曲十八弯总算解了,最开始在第一棵或者第二棵树都没关系,就看你要不要移动一次,状态转移方程是dp[i][j] = max(dp[i-1][j-1],dp[i-1][j]),其中i代表时间,其原创 2015-07-27 10:47:02 · 297 阅读 · 0 评论 -
【贪心】POJ 1065
头一次接触POJ,然后写了自己比较擅长的贪心。 解题思路大概就是从小排(这个很重要,然后用cmo随便长度或者重量的排序,选择最小的开始) 直到所有比他weight大的,没有符合条件的了。就代表要再加一分钟了。 然后再次访问,用used标记有没有用过。 和活动顺序排序有点类似。 /**测试样例: 3 5 4 9 5 2 2 1 3 5 1 4 3 2 2 1 1 2 2 3 1 3 2原创 2015-04-10 19:00:36 · 380 阅读 · 0 评论 -
【枚举】POJ 3279
直达–>POJ 3279 Fliptile题意:poj的奶牛又开始作孽了,这回他一跺脚就会让上下左右的砖块翻转(1->0 || 0->1),问你最少踩哪些砖块才能让初始的砖块全部变成0,要输出踩砖块位置。思路:也不知道为什么归类在搜索里,问了大牛,枚举第一行的情况(1<#include <cstdio> #include <cstring> using namespace std; int N,M;原创 2016-08-21 15:16:39 · 175 阅读 · 0 评论