您的位置:首页 > 其它

uva 10453 - Make Palindrome (区间dp,记忆化搜索)

2013-08-12 19:40 375 查看
本文出自 http://blog.csdn.net/shuangde800

题目链接: 点击打开链接

题目大意

给一个字符串,要求添加最少个字符,把它变成回文串,并输出。

思路

简单的区间dp,

f(i, j) 表示区间(i, j) 内的字符串添加的最少个数,变成回文串
那么, 如果str[i]==str[j], f(i, j) = f(i+1, j-1) + 1
f(i, j) = min{f(i+1, j), f(i, j-1)} + 1;
题目要输出方案,那么只要再开一个数组,根据状态转移递归输出即可

代码

记忆化搜索 + 递推的区间dp都有实现
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: