记录编号 |
20676 |
评测结果 |
AAAAATTTTT |
题目名称 |
取数字问题 |
最终得分 |
50 |
用户昵称 |
苏轼 |
是否通过 |
未通过 |
代码语言 |
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.