区间DP
文章平均质量分 75
WA是一笔财富
这个作者很懒,什么都没留下…
展开
-
POJ - 3280 Cheapest Palindrome 区间DP
传送门:POJ3280 题意:给定一个字符串,要将其变成回文串,删除一个字母和添加一个字母都有不同的花费,问最小花费是多少。 思路:这题我真是没有思路,太弱了。。 正解:dp[i][j]表示将[i,j]区间的字符串变成回文串的最小花费,然后又如下转移: 如果s[i] == s[j] 那么 dp[i][i] = dp[i + 1][j - 1] 否则 dp[i][j] = min(dp[原创 2017-07-21 21:27:02 · 242 阅读 · 0 评论 -
牛客网-美团CodeM初赛A轮 合并回文子串 区间DP
[编程题] 合并回文子串 时间限制:2秒 空间限制:262144K 输入两个字符串A和B,合并成一个串C,属于A和B的字符在C中顺序保持不变。如"abc"和"xyz"可以被组合成"axbycz"或"abxcyz"等。 我们定义字符串的价值为其最长回文子串的长度(回文串表示从正反两边看完全一致的字符串,如"aba"和"xyyx")。 需要求出所有可能的C中价值最大的原创 2017-06-19 13:05:08 · 1057 阅读 · 4 评论 -
Codeforces 835 D Palindromic characteristics 区间dp
传送门:Codeforces 835D 题意:给定一个字符串,定义普通的回文串为1 - 回文串,则k - 回文串满足: 1. 字符串左半段等于右半段 2.左右都为k - 1 回文串 问给定字符串当中每种回文串的数量。 思路:由定义可以推得k - 回文串一定是k - 1回文串,要求k - 回文串我们要先预处理出所有可能的回文串,定义 dp[i][j]表示s[i...j]是否为回文串,容易原创 2017-08-01 20:16:33 · 335 阅读 · 0 评论 -
HDU - 5900 QSC and Master 区间DP
传送门:HDU5900 题意:给出n 个pair<int , int>,每次可以选择相邻的两个pair。如果他们的first不互质就可以把它们都删掉,并且获得second之和的分数,问最大得分是多少 思路:先n^3区间dp求出任意一段连续区间能否消掉,用f[i][j]表示,再n^3区间dp取一个最大值。转移很简单,代码里一看就懂。 代码: #include #define ll lon原创 2017-09-08 14:28:41 · 233 阅读 · 0 评论