DP - 动态规划
hr_whisper
来自Fzu12级学生,喜欢编程。
新blog地址: www.hrwhisper.me
展开
-
HDU 2059 龟兔赛跑 DP
早上蓝桥杯就有这题,做了两小时没做出来,结果一共才做了五题,哭瞎了,又被虐QAQDP.....DP..........DP我还傻傻的模拟。T T---------------------------------------------------被虐的分割线---------------------------------------------------传送门 :http:原创 2013-12-01 20:15:06 · 807 阅读 · 0 评论 -
UVA 11404 - Palindromic Subsequence LCS
给定一个由小写字母组成的字符串,删除其中0个或多个字符,使得剩下的字母(顺序不变)组成一个尽量长的回文串。如果有多解,输出字典序最小的解。原创 2014-02-13 18:44:02 · 979 阅读 · 0 评论 -
UVA 10534 - Wavio Sequence LIS
给定一个长度为n的整数序列,求一个最长子序列(不一定为连续),使得该序列的长度为奇数2*k+1,前k+1个数严格递增,后k+1个数严格递减。(严格递增/递减意味着相邻两个数不能相同)原创 2014-02-12 23:58:19 · 1194 阅读 · 0 评论 -
UVA 11584 - Partitioning by Palindromes DP
输入一个由小写字母组成的字符串,你的任务是把它划分成尽量少的回文串。比如,racecar本身就是回文串,fastcar只能分为7个单字母组成的回文串;aaadbccb最少可以分成3个回文串:aaa、d、bccb。字符串长度不超过1000原创 2014-02-12 23:10:58 · 1234 阅读 · 0 评论 -
UVA 10635 - Prince and Princess LCS转化为LIS
有两串长度分别为p+1和q+1的序列,每个序列中的各个元素互不相同,且都是1~n*n之间的整数,两个序列的第一个元素是1,求A和B的最长公共子序列长度。原创 2014-02-09 21:05:23 · 1177 阅读 · 0 评论 -
UVA 10891 - Game of Sum DP
有一个长度为n的整数序列,A和B轮流取数,A先取,每次可以从左端或者右端取一个或多个数,所有数都被取完时游戏结束,然后统计每个人取走的所有数字之和作为得分,两人的策略都是使自己的得分尽可能高,并且都足够聪明,求A的得分减去B的得分的结果。原创 2014-02-09 22:27:43 · 909 阅读 · 0 评论 -
UVA 11367 - Full Tank? dijkstra+DP
n个城市有m条道路。每个城市的油价不一样,给出起点s和终点t,以及汽车的油箱的容量,求从城市s到城市 t 的最便宜路径。(一开始油箱是空的,你每次可以选择加多少升。假设每单位的距离消耗1L汽油)原创 2014-01-28 21:23:44 · 2508 阅读 · 0 评论 -
UVA 10917 Walk Through the Forest SPFA
Jimmy下班后决定每天沿着一条不同的路径回家,欣赏不同的风景。他打算只沿着满足如下条件的(A,B)道路走:存在一条从B出发回家的路,比所有从A出发回家的路径都短。你的任务是计算一共有多少条不同的回家路径。其中公司的编号为1,家的编号为2.原创 2014-01-24 20:14:15 · 2234 阅读 · 0 评论 -
ZOJ 1076 Gene Assembly LIS
给你一串基因,然后给你上面的外显子的起始和终止位置,求最长上升子序列(LIS)并且输出这些外显子的序号原创 2013-12-23 22:01:04 · 1143 阅读 · 0 评论 -
HDU 2151 Worm DP
因为平安夜苹果涨价(嘻嘻,明天恰好平安夜有木有,提前祝大家平安夜快乐)Lele就在他家门口水平种了一排苹果树,共有N棵。他发现在左起第P棵树上的一只毛毛虫每1分钟毛毛虫会随机从一棵树爬到相邻的一棵树上,求M分钟后到达T棵树的方案数。原创 2013-12-23 20:19:06 · 854 阅读 · 0 评论 -
2013腾讯编程马拉松初赛第〇场(HDU 4504)威威猫系列故事——篮球梦
篮球赛假如我们现在已经知道当前比分 A:B,A代表我方的比分,B代表对方的比分,现在比赛还剩下t秒时间。我们简单的认为双方各自进攻一次的时间皆固定为15秒(不到15秒则进攻不得分),且为交替进攻,即我方进攻一次,接着对方进攻,依次循环。 进攻有三种选择方式:(这里不考虑命中率) 1、造犯规,(假设都两罚一中)得1分; 2、中距离投篮 得2分; 3、三分球 得3分。 为了简化问题,假设在对方回合,由于我方防守比较好,只让对手得1分,且为固定,即对方的进攻回合就为每回合得1分。现在比赛进入最原创 2014-04-14 21:47:29 · 1327 阅读 · 0 评论 -
POJ 3181 Dollar Dayz DP
给你n元钱和无限个价钱为1~k的物品,让你求有多少种方法花光这n元钱?原创 2014-02-26 21:43:46 · 995 阅读 · 0 评论 -
POJ 3254 Corn Fields 状态压缩DP (C++/Java)
一个农民有n行m列的地方,每个格子用1代表可以种草地,而0不可以。放牛只能在有草地的,但是相邻的草地不能同时放牛, 问总共有多少种方法。原创 2014-07-31 23:10:25 · 1034 阅读 · 0 评论 -
POJ 3613 Cow Relays 恰好n步的最短路径
有T条路,从s到e走n步,求最短路径。原创 2014-07-04 22:32:39 · 1283 阅读 · 0 评论 -
HDU 4508 湫湫系列故事——减肥记I (2013腾讯编程马拉松初赛第一场)
半夜车厢里乘客的呼吸沉入海底,我仍坐在卧铺过道的折叠椅上看窗外,数着偶尔擦肩而过的列车,打量山间民居的点点灯光,发觉月光在农田水洼里的倒影比在哪儿都透亮。 想象中,每次我都能坐这样的夜行列车,一夜过去,眼前的世界便换了天地。 有时,我会问自己:“还记得十年前那个期待见识这个世界的少年吗?” 有时,我也被反问:“你还认得出这是你十年后想成为的那个风尘仆仆的大叔吗?” 那时全世...原创 2014-07-03 14:56:08 · 955 阅读 · 0 评论 -
POJ 3616 Milking Time DP
XXX要挤牛奶。已知M个时候母牛可以产奶(初始时间,挤牛奶时间,产量),她每次挤完一次需要休息R时间,求n时间后她能获得的最大牛奶数原创 2014-04-08 23:23:46 · 917 阅读 · 0 评论 -
POJ 2385 Apple Catching DP
有两棵树,一开始站在第一棵树,每秒有苹果从树上掉下(不会同时两棵树都有),你最多移动w次,求t秒后你能得到的最大的苹果数目。原创 2014-04-06 23:38:50 · 1191 阅读 · 0 评论 -
POJ 2229 Sumsets DP
将一个数分解为2的幂的和,有多少种方法。如7有6种1) 1+1+1+1+1+1+1 2) 1+1+1+1+1+2 3) 1+1+1+2+2 4) 1+1+1+4 5) 1+2+2+2 6) 1+2+4原创 2014-04-03 22:21:59 · 831 阅读 · 0 评论 -
FZU Problem 2156 Climb Stairs DP
爬楼梯,要爬到n这个位置,每次可以走x也可以走y,然后一定要经过A和B两点,求最终到达n的方案数。原创 2014-03-24 18:08:37 · 1189 阅读 · 0 评论 -
POJ 3176 Cow Bowling DP
给你一个n层的数字三角形,从第一行出发,每次只能往下和往右走,求走到最后一行权值之和最大的路线值。原创 2014-04-02 20:43:52 · 846 阅读 · 0 评论 -
POJ 1458 Common Subsequence (zoj 1733 ) LCS
给定两串子序列,求最长的公共字串(LCS)原创 2013-12-23 19:57:49 · 1132 阅读 · 0 评论 -
HDU 1421 搬寝室 DP
搬寝室是很累的,xhd要从n件物品中搬走2*k件,(左右手各拿一件),他的每次疲劳度和左右手的物品的重量差的平方成正比,求搬完后最小的疲劳度。原创 2013-12-24 09:49:09 · 1071 阅读 · 0 评论 -
ZOJ 1108 FatMouse's Speed (HDU 1160) DP
传送门:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=108题目大意:输入好多组w 和 s 代表老鼠的重量和速度,要求找出满足 w 严格 升序, s严格降序的最大长度和他们的序号。我是先排序,然后和ZOJ 1136 Longest Ordered Subsequence (http://blog.csdn.原创 2013-11-09 18:10:54 · 987 阅读 · 0 评论 -
ZOJ 3171 The Hidden 7's DP
传送门:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3203题目大意给定一串字符串,需要计算出seven的个数。#include#include#includeconst int MAXN=10000+10;char s[MAXN];const char seven[]=" seven";in原创 2013-11-13 00:12:49 · 818 阅读 · 0 评论 -
POJ 1065 Wooden Sticks(zoj 1025) 最长单调子序列
POJ :http://poj.org/problem?id=1065ZOJ: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=25看大神的代码的研究的。。。心情不好该学习还是要学习的。。。。QAQ其实题目的意思就是把所有元素分为最少的堆数,每堆有l可以证明不下降序列完全覆盖数就是最长下降子列原创 2013-11-12 23:20:06 · 806 阅读 · 0 评论 -
POJ 1384 Piggy-Bank (ZOJ 2014 Piggy-Bank) 完全背包
POJ :http://poj.org/problem?id=1384ZOJ:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2014题目大意:给定一个猪的存钱罐,它的初始重量和装满的重量,给你n种货币(包括它们的重量和价值),要求求最坏情况下装满这个猪所能获得的钱依旧是完全背包的问题。只原创 2013-11-10 22:18:37 · 710 阅读 · 0 评论 -
poj 2063 Investment ( zoj 2224 Investment ) 完全背包
传送门:POJ:http://poj.org/problem?id=2063ZOJ:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2224大意:给你一堆本金,还有投资方案获得的利润。让你进行合理投资,要求若干年后获利最大。完全背包问题。背包容量就是money,要尽量装满(不是风险投资哇,投资出去原创 2013-11-10 21:09:33 · 679 阅读 · 0 评论 -
ZOJ 1136 Longest Ordered Subsequence DP
传送门:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1136题目大意:给定一串序列,求最长的升序列长度,如1, 7, 3, 5, 9, 4, 8 最长的为 1, 3, 5, 8 输出4进行DP,设dp [ i] 为 以 i 结尾的升序列的最大值,那么从 i 开始向前查找,若 a[ j ]原创 2013-11-09 13:17:08 · 830 阅读 · 0 评论 -
HDU 1248 寒冰王座 完全背包
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1248中文题,大意就不说了。第一道完全背包题,跟着背包九讲做的。和0-1背包的区别在于所不同的是每种物品有无限件。#include#include#includeusing namespace std;const int MAXN=10000+10;int dp[MA原创 2013-11-09 23:14:33 · 814 阅读 · 0 评论 -
POJ 1050 To the Max
传送门http://poj.org/problem?id=1050做这题的巧妙之处在于把矩阵转化为一维数组,然后求子序列最大和。如0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 压缩前两行得到 9 0 -13 2#include#includeusing namespace std;cons原创 2013-09-15 16:13:15 · 525 阅读 · 0 评论 -
POJ 1163 The Triangle 简单DP
看题传送门门:http://poj.org/problem?id=1163困死了,记忆化搜索等下写。普通做法,从下往上,可得状态转移方程为:dp[i][j]= a[i][j] + max (dp[i+1][j] , dp[i+1][j+1] );#include#includeint a[101][101];int dp[101][101];in原创 2013-11-08 23:03:59 · 565 阅读 · 0 评论 -
POJ 1014 Dividing 多重背包
http://poj.org/problem?id=1014下午A完那题并查集后,滚去睡觉,睡得跟猪一样,半小时后闹钟响了,睁眼一看天是黑的!然后我就抱怨道舍友的疯了呀,闹钟那么早,呃不对怎么这么像我的闹钟?我一看手表,卧槽,5点多,我就很郁闷什么时候脑残把早上的闹钟定到五点多了? 突然想到这是晚上。。。。。。。。哭瞎了 T T还有呀最近LOL好火的样子,晚上在学校举办LOL决赛- -||原创 2013-11-15 20:25:00 · 687 阅读 · 0 评论 -
POJ 3628 Bookshelf 2 0-1背包
传送门:http://poj.org/problem?id=3628题目看了老半天,牛来叠罗汉- -|||和书架什么关系啊。。大意是:一群牛来叠罗汉,求超过书架的最小高度。0-1背包的问题,对于第i只牛可以放或者不放。然后最后求出大于书架高度的,减去书架高度即可。也可以倒着来看。背包的容量为牛总的高度-书架的高度,求不超过这个容量的最大值,最后容量-这个值就是答案了原创 2013-10-31 13:53:18 · 852 阅读 · 0 评论 -
POJ 3211 Washing Clothes 0-1背包
题目大意:xxx很懒,但他有个漂亮又勤奋的女友 (尼玛能不能不刺激我,刚看到这题的时候发现自己的衣服没洗!!!) 可以帮他洗衣服。洗衣服的时候要求不同的颜色的衣服不能同时洗。一人洗一件的话,问最短的时间。对每个颜色的衣服进行划分,最后求和,就转化为若干个0-1背包问题。对于每种颜色:因为两个人同时洗,但不能一起洗一件,故时间必为长的那个。所以若时间接近一半,原创 2013-11-03 17:23:13 · 559 阅读 · 0 评论 -
HDU 2577 How to Type DP也可以模拟
大家都打过字吧,现在有个有趣的问题:给你一串字符串,有大写有小写,要求你按键次数最少来输出它,输出按键次数。大写字母可以通过caps lock 也可以用shift得到,小写也是。但是起始状态和最后caps lock都是不锁定的。求最少的按键次数。不用DP的方法:当有原创 2013-12-23 19:54:22 · 1080 阅读 · 2 评论 -
HDU 1176 免费馅饼 DP
XXX在玩真人版的接馅饼游戏,她只能在0~10这11个位置上移动(间隔1米),初始在5。并且每秒种只有在移动不超过一米的范围内接住坠落的馅饼。馅饼只会掉在那11个位置上,求他最多能接住多少馅饼?原创 2013-12-22 13:24:40 · 982 阅读 · 0 评论 -
HDU 2084 数塔 DP
在讲述DP算法的时候,一个经典的例子就是数塔问题,它是这样描述的:有如下所示的数塔,要求从顶层走到底层,若每一步只能走到相邻的结点,则经过的结点的数字之和最大是多少?原创 2013-12-22 13:59:31 · 2834 阅读 · 0 评论 -
HDU 1227 Fast Food DP
http://acm.hdu.edu.cn/showproblem.php?pid=1227题目大意:n个饭店在一条直线上,要在这条直线上建立k个仓库,使各个仓库到商店距离和最小。(仓库可以自己选择到哪个商店)看题解的。。。嗯先存着,以后在来自己做一遍。下面转自http://blog.sina.com.cn/s/blog_7ef869630100uzhj.htm原创 2013-12-14 11:08:17 · 778 阅读 · 0 评论 -
HDU 1069 Monkey and Banana DP LIS
http://acm.hdu.edu.cn/showproblem.php?pid=1069题目大意一群研究员在研究猴子的智商(T T禽兽啊,欺负猴子!!!),他们决定在房顶放一串香蕉,并且给猴子n种砖块。砖块长宽高分别为xyz,每一种可以取任意个,并且他们可以随意的摆放。然后要求堆叠起来的砖块上面的必须严格小于下面的。求最大可以堆叠的高度。思路:转化为原创 2013-12-03 21:32:21 · 876 阅读 · 0 评论 -
HDU 1003 Max Sum
为POJ 1050增加熟悉度。洗洗睡。明天高数竞赛是神马。。。可以吃么。。。。。#include#includeusing namespace std;const int MAXN=100000+10;int a[MAXN];int main(){ int kase; scanf("%d",&kase); int n; fo原创 2013-09-15 00:17:15 · 621 阅读 · 0 评论