比赛 HAOI2009 模拟试题2 评测结果 WWAEEEEEEE
题目名称 棋盘上的问题 最终得分 10
用户昵称 maxiem 运行时间 0.000 s
代码语言 Pascal 内存使用 0.00 MiB
提交时间 2009-04-22 11:06:16
显示代码纯文本
program board;
var
  table:array [1..5000,1..5000] of record
    a,u:boolean;
  end;
  sum,flag,a,b,i,j,s,n,m:longint;
  f,af:boolean;
begin
  fillchar (table,sizeof(table),0);
  assign (input,'board.in');
  reset (input);
  readln (n,m);s:=m;
  for i:=1 to m do begin
    readln (a,b);
    table[a,b].a:=true;
  end;
  close (input);
  assign (output,'board.out');
  rewrite (output);
  for i:=1 to n do begin
    flag:=0;
    for j:=1 to n do if table[i,j].a then begin
      inc(flag);
      table[i,j].u:=true;
    end;
    if flag>1 then inc(sum,flag);
  end;
  for i:=1 to n do begin
    flag:=0;af:=false;f:=false;
    for j:=1 to n do if (table[j,i].a) then if table[j,i].u then af:=true else begin
      f:=true;
      inc(flag);
      table[j,i].u:=true;
    end;
    if flag>1 then inc(sum,flag) else if (af) and (f) then inc(sum,flag);
  end;
  writeln (sum);
  close (output);
end.