区间dp
zzti_xiaowei
xxx
展开
-
poj-3280 Cheapest Palindrome
[题目链接] 思路:区间dp,求添加最少代价的字母让字符串变为回文串。 删除和添加一个字符在本质上是相同的,所以二者取最小。 dp[i][j]:表示区间[i,j]变为回文串的最小代价。 如果s[i]==s[j],dp[i][j]=dp[i+1][j-1]。 dp[i][j]=min(dp[i+1][j]+cost[s[i]],dp[i][j-1]+cost[s[j]])。 代码: ...原创 2018-08-29 15:11:50 · 128 阅读 · 0 评论 -
石子合并(经典区间dp)
[题目]: n堆石子摆成一条线。现要将石子有次序地合并成一堆,规定每次只能选相邻的2堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的代价。计算将n堆石子合并成一堆的最小代价。 [普通解法]: 状态转移方程:f(i,j)=min{f(i,k)+f(k+1,j)}+w(i,j)f(i,j)=min\{f(i,k)+f(k+1,j)\}+w(i,j)f(i,j)=min{f(i,k)+f(k+1,...原创 2019-02-12 20:51:11 · 217 阅读 · 0 评论