比赛 noip-081029 评测结果 AAWWAEEEEE
题目名称 取数字问题 最终得分 30
用户昵称 苏轼 运行时间 0.000 s
代码语言 Pascal 内存使用 0.00 MiB
提交时间 2008-10-29 19:41:19
显示代码纯文本
program number;

const inp:string='number.in';
      out:string='number.out';

var m,n,i,j,min,tmp:integer;
    b:boolean;
    s:array[1..10,1..10]of integer;
    f:text;

procedure go(x,y:integer);
 var i,j:integer;
 begin
  if (x in[1..m])and(y in[1..n]) then
  begin
   tmp:=tmp+s[x,y];

   if (x=m)and(y=n) then
   begin
    if (tmp<min)and(tmp>0) then
    begin
     b:=true;
     min:=tmp;
    end;
   end else
   begin
    go(x+1,y);
    go(x,y+1);
   end;

   tmp:=tmp+s[x,y];
  end;
 end;

begin
 assign(f,inp);
 reset(f);

 readln(f,m,n);

 for i:=1 to m do
  for j:=1 to n do
   read(f,s[i,j]);

 close(f);

 min:=maxint;
 go(1,1);

 assign(f,out);
 rewrite(f);

 if b then
  writeln(f,min) else
  writeln(f,-1);

 close(f);
end.