[POJ 3280]

Cheapest Palindrome

典型的DP。

首先用一个DP判断s[i…i+l]是否回文,这可以根据s[i+1…i+l-1]是否回文以及s[i]==s[i+l]得到。这里最外层循环是l,也即回文串的长度。随后是要计算将s[1…i-1]和s[i+l+1…m]转化成完全相同的最小花费,这里可以用另一个DP预处理得到。