摘要: http://poj.org/problem?id=2264题意:找出一个包含两个字串的最短的串;思路:先找出两个字符串的LCS,然后构造目标字符串。例如,有两个字符串 apple pffeach 这两个字符串的LCS是P E 那么分别找出P,E在两个字符串的位置,再将不属于LCS的字符插进来,就变成了: (a) P (pl) (ff) E (ach)View Code #include<cstdio>#include<cstring>#include<algorithm>using namespace std;int main(){ char a[105] 阅读全文
posted @ 2011-12-02 21:01 LT-blogs 阅读(311) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=1159题意:给一个长度为n的串,求将其变成回文要增加的最少字符数.思路:LCS算法:状态方程:if(a[i]==b[j]) ans[i][j]=max1(ans[i-1][j-1]+1,ans[i-1][j],ans[i][j-1]); else ans[i][j]=max(ans[i-1][j],ans[i][j-1]);二维数组的形式(必须用short,否则超内存):View Code #include<cstdio>#include<algorithm>#include<cstring>using 阅读全文
posted @ 2011-12-02 18:48 LT-blogs 阅读(155) 评论(0) 推荐(0) 编辑