记录编号 80069 评测结果 AAWAWWWWTW
题目名称 交错匹配 最终得分 30
用户昵称 GravatarAlan 是否通过 未通过
代码语言 Pascal 运行时间 1.048 s
提交时间 2013-11-06 18:55:35 内存使用 0.24 MiB
显示代码纯文本
var
  r:array[0..200,0..200]of integer;
  a:array[1..200]of integer;
  b:array[1..200]of integer;
  i,j,x,y,k,n,m,max,mm:integer;
begin
  assign(input,'crossa.in');
  assign(output,'crossa.out');
  reset(input);
  rewrite(output);

  readln(n,m);
  for i:=1 to n do
    read(a[i]);
  readln;
  for i:=1 to m do
    read(b[i]);

  fillchar(r,sizeof(r),0);

  mm:=0;
  for i:=2 to n do
    for j:=2 to m do
      begin
        max:=r[i,j-1];
        if r[i-1,j]>max then max:=r[i-1,j];
        if i<>j then
          for x:=1 to i-1 do
            for y:=1 to j-1 do
              if (a[i]=b[y]) and (a[x]=b[j]) then
                if max<r[x-1,y-1]+2 then
                  max:=r[x-1,y-1]+2;
        r[i,j]:=max;
        if mm<max then mm:=max;
      end;

  writeln(mm);

  close(input);
  close(output);
end.