poj上关于回文的题目

poj 1159

给出一个序列,求出最少插入多少字符就能形成一个回文

1:用动态规划的方法做,

C[i][j]表示从i到j要插入的字符个数。

状态转移方程如下:

C[i][j]={     C[i+1][j-1]      if   char[i]=char[j];

                  1+min(C[i][j-1],c[i+1][j])   if  char[i]!=char[j]

2:求他的反转和本身的最长公共子序列

     所要插入的字符个数就是字符串长度减去最长公共子序列。

posted @ 2011-09-10 21:45  张兰云  阅读(249)  评论(0编辑  收藏  举报