记录编号 22934 评测结果 AAAAAAAAAA
题目名称 总流量 最终得分 100
用户昵称 Gravatarwo shi 刘畅 是否通过 通过
代码语言 Pascal 运行时间 0.008 s
提交时间 2011-01-14 15:37:27 内存使用 0.12 MiB
显示代码纯文本
const
  oo=99999999;

var
  n,i,total,m,z:longint;
  x,y,ch:char;
  f:Array['A'..'z']of boolean;
  g:array['A'..'z','A'..'z']of longint;

function min(l,r:longint):longint;
begin
  if l<r then exit(l);
  exit(r);
end;

procedure go(k:char; y:longint);
var
  i:char;
begin
  for i:='A' to 'z' do
  if (g[k,i]>0)and(not f[i]) then

    if i='Z' then
    begin
      m:=min(y,g[k,i]);
      g[k,i]:=g[k,i]-m;
      g[i,k]:=g[i,k]+m;
      total:=total+m;
      exit;
    end
    else begin
      f[i]:=true;
      go(i,min(y,g[k,i]));
      f[i]:=false;
      if m>0 then
      begin
        g[k,i]:=g[k,i]-m;
        g[i,k]:=g[i,k]+m;
      break;
      end;
    end;

end;

begin
  assign(input,'tflow.in'); reset(input);
  assign(output,'tflow.out'); rewrite(output);
  readln(n);
  for i:=1 to n do
  begin
    readln(x,ch,y,ch,z);
    g[x,y]:=g[x,y]+z;
    g[y,x]:=g[y,x]+z;
  end;
  f['A']:=true;
  total:=0;
  repeat
    m:=0;
    go('A',oo);
  until m=0;
  writeln(total);
  close(input);
  close(output);
end.