10453专题

UVA - 10453 Make Palindrome

题意:跟之前删除,添加,替换转化成回文串一个意思,还是从后往前枚举,最后根据dp[i+1][j],dp[i][j-1]的大小,我们就可以判断是添加在哪一边了,如果dp[i+1][j]大的话,那么果断是复制s[l]在最右边,因为不相等的话我们肯定要添加一个,当然要找最小的啦,另一种情况就复制s[r]在最左边,打印的时候注意如果有中间的字符的时候要记得打印就行了 #include <iostream

uva 10453 Make Palindrome

题意:给你n个串(长度最多为1000),问对于每个串插入最少多少m个字符能使它变成一个回文串。输出m,并把回文串输出. 看了解题报告。总结,还要随便用memset,否则会T。 #include <iostream>#include <cstdio>#include <cstring>using namespace std;const int N=1005;struct node