比赛 搜索题... 评测结果 AAAAAAAAAA
题目名称 最大的湖 最终得分 100
用户昵称 稠翼 运行时间 0.011 s
代码语言 Pascal 内存使用 0.16 MiB
提交时间 2014-11-04 19:38:41
显示代码纯文本
const dx:array[1..4]of longint=(0,1,-1,0);
      dy:array[1..4]of longint=(1,0,0,-1);
var
   a:array[-5..110,-5..110]of boolean;
   x,y,i,j,n,m,k,max,ans:longint;
procedure init;
begin
     assign(input,'lake.in');reset(input);
     assign(output,'lake.out');rewrite(output);
end;
procedure dfs(x,y:longint);
var
   i,xx,yy:longint;
begin
     for i:=1 to 4 do
     begin
          xx:=x+dx[i];yy:=y+dy[i];
          if a[xx,yy] then
          begin
               a[xx,yy]:=false;
               inc(max);
               dfs(xx,yy);
          end;
     end;
end;
procedure main;
begin
     readln(n,m,k);
     for i:=1 to k do
     begin
          readln(x,y);
          a[x,y]:=true;
     end;
     for i:=1 to n do
         for j:=1 to m do
         if a[i,j] then
         begin
              a[i,j]:=false;
              max:=1;
              dfs(i,j);
              if max>ans then ans:=max;
         end;
     writeln(ans);
end;
begin
     init;
     main;
end.