记录编号 20676 评测结果 AAAAATTTTT
题目名称 取数字问题 最终得分 50
用户昵称 Gravatar苏轼 是否通过 未通过
代码语言 Pascal 运行时间 5.003 s
提交时间 2010-10-28 14:30:59 内存使用 0.11 MiB
显示代码纯文本
program number;

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

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

procedure go(x,y:integer);
 var i,j:integer;
 begin
  if (x<=m)and(y<=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);

 b:=false;
 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,oup);
 rewrite(f);

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

 close(f);
end.