
区间DP
En回车
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[区间DP入门 括号匹配]Brackets POJ - 2955
[区间DP入门 括号匹配]Brackets POJ - 2955 题目大意:给你一个字符串,字符由(,), [,]构成,通过删除一些字符串或者不删除,找到最长的回文串输出长度。 分析:这是做过的第一道区间DP题目,是参考网上的博客写的,不是太难理解。 dp[i][j],表示从i到j的字符串中,最长的回文串。 用两个for去枚举所有的区间,对于每个区间,枚举每个点,看和i是否相等。原创 2017-05-30 15:05:08 · 446 阅读 · 0 评论 -
[区间DP 22 Halloween Costumes LightOJ - 1422 ]
[区间DP 22 Halloween Costumes LightOJ - 1422 ] 题目大意:一个人去参加N个舞会,每个舞会对着装都有要求,他可以身上同时穿多件衣服,也可以脱下,现在按顺序告诉你每个舞会的着装要求,问他最少需要穿几次衣服。 分析:dp[i][j]表示从i到j最少需要穿几次衣服 两个for枚举区间,对于区间[i,j],枚举k,if(num[i]==num[k])dp[原创 2017-05-30 15:24:43 · 557 阅读 · 0 评论 -
[区间DP] A - Easy Game LightOJ - 1031
[区间DP] A - Easy Game LightOJ - 1031 题目大意:A.B两个人玩游戏,给一个长度为n的整数数组,每人每次可以从左边或者右边取最少一个数字,假设每人每次的操作对自己都是最优的,A先取,问最后A比B的总和大多少,总和定义为,每人取的所有数的累加和。 分析:参考网上的博客,dp[i][j]表示区间[i,j]内,A比B多拿的,然后就是区间DP比较典型的,两个for枚原创 2017-05-30 16:17:31 · 341 阅读 · 0 评论 -
[区间DP] The Specials Menu LightOJ - 1025
[区间DP] The Specials Menu LightOJ - 1025 题目大意:给定一个字符串,可以在任意位置,删除任意多个字符,但最少要保留一个,问有多少种删除方式,使其变成回文串。 分析:dp[i][j]表示区间[i,j]的删除方式,对于dp[i,j]=dp[i+1,j]+dp[i,j-1]-dp[i+1][j-1],如果s[i]==[j] dp[i][j]+=dp[i+1][j原创 2017-05-30 16:53:51 · 321 阅读 · 0 评论 -
[区间DP] Zuma CodeForces 607B
**[区间DP] Zuma CodeForces 607B** 题目大意:给你一个数字串,每次只能删除一个回文串,问最少多少次可以删完。 分析:区间dp,特殊处理的必然是s[i]==s[j],这时候dp[i][j]=dp[i+1][j-1],因为这两个字符可以 和区间[i+1,j-1]的某个字串构成一个回文串,可以“消掉”。对于区间[i,j],枚举分割点,k。 dp[i][j原创 2017-05-31 11:47:53 · 413 阅读 · 0 评论 -
[区间DP] Multiplication Puzzle POJ - 1651
[区间DP] Multiplication Puzzle POJ - 1651 题目大意:给定一个数组,第一个数和最后一个数不能选,每次拿走一个数,得到的价值为该数字和左右相邻的三个数字的乘积,n-2次操作后,求最小的价值为多少。最小的价值定义为n-2次操作的累加和。 分析:首先想到区间DP,dp[i,j],定义为区间[i,j]的最小价值,对于每个区间,我们可以枚举最后取的那个值,dp[i][j原创 2017-05-31 15:35:13 · 367 阅读 · 0 评论 -
[区间DP 好题] Food Delivery ZOJ - 3469
[区间DP 好题] Food Delivery ZOJ - 3469 题目大意:一家外卖店送外卖,同时有多个买家叫了外卖,假设他们都在一条直线上。每个买家都有一个焦虑值,等的时间越长,焦虑值越大。现告诉你外卖员的位置,移动速度,以及各个买家在直线上的坐标以及他们在单位时间内的愤怒值,现在外卖员想所有买家愤怒的总和尽可能的小,问你最小能是多少。(假设外卖员把外卖送到买家手里的时间忽略不计)。原创 2017-05-31 15:49:30 · 563 阅读 · 0 评论 -
[区间dp] Dire Wolf HDU - 5115
[区间dp] Dire Wolf HDU - 5115 题目大意:有n只狼要被消灭,杀第i只狼,猎人会受到(i-1)和(i+1)号狼的额外攻击和i号狼的正面攻击,如果两侧不存在的狼,那么不会受到额外攻击,问杀死所有狼后,猎人收到的最低伤害是多少。 分析:区间dp,狼被杀的顺序不一样,收到的伤害也就不同,因为我们要在区间内枚举最后一条被杀的狼,采取递推的形式,由小区间推向大区间。 dp[原创 2017-05-31 15:58:03 · 512 阅读 · 0 评论 -
[区间dp 构建回文串] Cheapest Palindrome POJ - 3280
[区间dp 构建回文串] Cheapest Palindrome POJ - 3280 题目大意:给定一个字符串,可以任意添加或者删除字符,构成一个回文串,添加或者删除都有一定的代价,问总代价最小是多少? 分析:首先可以考虑,添加一个字符或者减少一个字符,意义是等价的,所以我们可以两者取最小的。 对于dp[i][j],肯定是增加一个s[i]的话费或者增加一个s[j]的花费。 如原创 2017-05-31 16:11:41 · 455 阅读 · 0 评论