摘要: http://poj.org/problem?id=2110题意:给你一个n*n矩形(n<=100),每个位置上都有一个数字代表此处山的高度,要从(1,1)走到 (n,n),要求一条路径使得这条路径上最高山和最矮山的高度差最小,输出这个最小高度差。分析:这个n很小,所以容易想到bfs撸,但n也不小,直接bfs会撸爆,于是可以二分最后的高度差下界,然后bfs判定,这样大大减少了每次bfs的遍历结点个数,节省了大量时间和空间。 阅读全文
posted @ 2014-03-09 23:23 Chellyutaha 阅读(257) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2018此乃神题……详见04年集训队论文周源的,看了这个对斜率优化dp的理解也会好些。分析: 我们要求的是{S[j]-s[i-1]}/{j-(i-1)}最大,可以发现这个形式满足直线斜率式,于是原题就可以看成平面上有一些点P(i,s[i]),然后求这些点中横距大于F的两点的最大斜率。 这么转化后仍然需要n^2的枚举 但当你枚举一个点,并在前面的点中枚举找到一个和它结合斜率最大的解时,可以发现是像凸包那样的维护一个下凹的曲线,因为如果某个点是上凸的,那么易得这个点得到的斜率必定不会比前一个点大!这也就是说我们在从F..n枚举区间的最右端点... 阅读全文
posted @ 2014-03-09 23:02 Chellyutaha 阅读(244) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2138题意:给你一些单词和初始单词,在初始单词的任意位置你可以加任意一个字母,使得这个新单词在给的单词中有所出现,然后在这样不断迭代下去,让你求出最远能到达的单词。分析:长度为len的单词只能由长度为len-1的单词得到,故可以把每个单词看成一个节点,处理节点之间是否连边,鉴于n很小,可以朴素的O(n)扫描。然后就是跑一边最长路。又因为是DAG图,所以dp是可以且更优的 阅读全文
posted @ 2014-03-09 22:04 Chellyutaha 阅读(268) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2229分析:显然的递推若n为奇数,那么肯定是在n-1的基础上前面每个数+1,即f[n]=f[n-1]若n为偶数 当第一位数字是1的时候,等同于f[n-1] 当第一位数字不是1的时候,因为都是2的倍数,可以提出一个2来,即与f[n/2]相同综上,n为偶数时候,f[n]=f[n-1]+f[n/2] 阅读全文
posted @ 2014-03-08 23:43 Chellyutaha 阅读(166) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2187题意:老题了,求平面内最远点对(让本渣默默想到了悲剧的AHOI2012……)分析:nlogn的凸包+旋转卡壳附:http://www.cppblog.com/staryjy/archive/2009/11/19/101412.html旋转卡壳的 阅读全文
posted @ 2014-03-07 22:58 Chellyutaha 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 题目:http://poj.org/problem?id=2185题意:就是要求一个字符矩阵的最小覆盖矩阵,可以在末尾不完全重合(即在末尾只要求最小覆盖矩阵的前缀覆盖剩余的尾部就行了)分析: 先看一维的,对于一个一维字符串的最小覆盖子串首先肯定是它的一个前缀,而这个前缀的最小长度为n-next[n],证明在这里http://blog.csdn.net/fjsd155/article/details/6866991 然后发现这题就是二维的,于是可以考虑求出所有行的最小覆盖子串长度,而这些长度的lcm就是我们要求的最小覆盖子矩阵的一边长,同理对列也这么处理得出另一边长,然后相乘得到面积。(值得.. 阅读全文
posted @ 2014-03-07 22:13 Chellyutaha 阅读(231) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2184题意:01背包的变种,就是说有2组值(有负的),你要取一些物品是2阻值的和非负且最大分析:1、对于负的很好处理,可以把他们都加上一个数使其变成正数2、对于两个变量可以控制一个变量,求另一个变量的最大值,那么接下来的问题就是处理“体积恰好为V的01背包”问题了(和普通的不同哦……普通的不一定装满的)以前处理恰好体积为V的01背包都是开数组染色刷一遍的,原来有更好的方法,就是初始值是f[0]=0,f[1..V]=-inf,那么转移中f[j]=f[j-v[i]]+w[i],若j-v[i]表示的背包没有装满那么这个就不能转移了……真心有点机智 阅读全文
posted @ 2014-03-07 20:53 Chellyutaha 阅读(195) 评论(0) 推荐(0) 编辑
摘要: Rebuilding RoadsTime Limit: 1000MS Memory Limit: 30000KTotal Submissions: 8589 Accepted: 3854DescriptionThe cows have reconstructed Farmer John's farm, with its N barns (1 <= N <= 150, number 1..N) after the terrible earthquake last May. The cows didn't have time to rebuild any extra r 阅读全文
posted @ 2014-03-05 23:37 Chellyutaha 阅读(276) 评论(0) 推荐(0) 编辑
摘要: Cow CyclingTime Limit: 1000MS Memory Limit: 30000KTotal Submissions: 2468 Accepted: 1378DescriptionThe cow bicycling team consists of N (1 <= N <= 20) cyclists. They wish to determine a race strategy which will get one of them across the finish line as fast as possible. Like everyone else, cow 阅读全文
posted @ 2014-03-05 23:01 Chellyutaha 阅读(306) 评论(0) 推荐(0) 编辑
摘要: Power Hungry CowsTime Limit: 1000MS Memory Limit: 30000K Total Submissions: 4570 Accepted: 1120 DescriptionFJ's cows would like to be able to compute integer powers P (1 <= P <= 20,000) of numbers very quickly, but need your help. Because they're going to be computing powers of very la 阅读全文
posted @ 2014-03-05 22:32 Chellyutaha 阅读(1005) 评论(0) 推荐(0) 编辑