题目大意:给出一个字符串,问至少添加多少个字符才能使它成为回文串? 思路:很明显的方程是:dp[i][j]=min{dp[i+1][j],dp[i][j-1],dp[i+1][j-1](str[i]==str[j]时)} dp[i][j]表示第i个字符到第j个字符构造成回文串最少添加的字符,但discuss里说了 这样做会超空间+超时 观察下这个方程,每次用到的就是那三个子状态,于是适当的改变方程的形式: dp[i][j]表示第i个字符开始长度为j的子串构成的字符串最少需要添加的字符,于是方程变…