import java.util.Scanner;
public class Main {
public static void main(String [] args)
{
Scanner sc = new Scanner(System.in);
String s = sc.next();
System.out.println(back(s));
sc.close();
}
public static int back(String s)
{
char c1[] = s.toCharArray();
char c2[] = new char[c1.length];
int d[][]=new int[c1.length+1][c1.length+1];
for(int i=c1.length-1;i>=0;i--)
{
c2[c1.length-i-1]=c1[i];
}
for(int i=0;i<c1.length;i++)
d[i][c1.length-1]=0;
for(int i=0;i<c1.length;i++)
d[c1.length-1][i]=0;
for(int i=1;i<=c1.length;i++)
{
for(int j=1;j<=c1.length;j++)
{
if(c1[i-1]==c2[j-1])
{
d[i][j]=d[i-1][j-1]+1;
}
else
{
d[i][j]=Math.max(d[i-1][j],d[i][j-1]);
}
}
}
return c1.length-d[c1.length][c1.length];
}
}
其中一组case返回结果为null。。。求教各位大神这个代码有啥问题没