记录编号 5606 评测结果 AAAAAAAAAA
题目名称 [LOL2000] 回文词 最终得分 100
用户昵称 Gravatar苏轼 是否通过 通过
代码语言 Pascal 运行时间 3.070 s
提交时间 2008-10-27 18:57:48 内存使用 47.82 MiB
显示代码纯文本
program cch(input,output);
var
 i,n,ans,j:integer;
 a,b:array[1..5000] of char;
 f:array[0..5000,0..5000] of integer;

function max(x,y:integer):integer;
begin
 if x>y then exit(x)
        else exit(y);
end;

begin
 assign(input,'palin.in');
 assign(output,'palin.out');
 reset(input);
 rewrite(output);
 readln(n);
 for i:=1 to n do read(a[i]);
 for i:=1 to n do
  b[i]:=a[n-i+1];
 f[0,0]:=0; f[0,1]:=0; f[1,0]:=0;
 for i:=1 to n do
  for j:=1 to n do
   if a[i]=b[j] then f[i,j]:=f[i-1,j-1]+1
                else
     if f[i,j-1]>f[i-1,j] then f[i,j]:=f[i,j-1]
                          else f[i,j]:=f[i-1,j];
 ans:=n-f[n,n];
 write(ans);
 close(input);
 close(output);
end.