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:求他的反转和本身的最长公共子序列
所要插入的字符个数就是字符串长度减去最长公共子序列。
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:求他的反转和本身的最长公共子序列
所要插入的字符个数就是字符串长度减去最长公共子序列。