type
date=record
x,y,s:longint;
end;
sz=record
h,r:longint;
w:array[0..4000001]of date;
end;
const
c:array[1..4,1..2]of integer=((0,1),(0,-1),(1,0),(-1,0));
var
a:array[0..2001,0..2001]of integer;
b:sz;
i,j,n,m:longint;
zd,qd,s1,s2:date;
ch:char;
procedure chu;
begin
b.h:=1;
b.r:=0;
end;
procedure int(a:date);
begin
inc(b.r);
b.w[b.r]:=a;
end;
function outt:date;
begin
outt:=b.w[b.h];
inc(b.h);
end;
begin
readln(n,m);
for i:=1 to n do
for j:=1 to n do
read(a[i,j]);
readln(qd.x,qd.y);
readln(zd.x,zd.y);
qd.s:=0;
chu; int(qd);
while b.h<=b.r do
begin
s1:=outt;
for i:=1 to 4 do
begin
s2.x:=s1.x+c[i,1];
s2.y:=s1.y+c[i,2];
s2.s:=s1.s+1;
if (s2.x=zd.x) and (s2.y=zd.y)
then begin
write(s2.s);
readln;
exit;
end;
if a[s2.x,s2.y]=0
then begin
int(s2);
a[s2.x,s2.y]:=1;
end;
end;
end;
writeln(’No Answer!’);
readln;
end.
哪儿错了啊,谁给我改一下,感谢啊
测试结果2: 输出过少|用户输出数据少于标准输出的50%[标准输出10位|选手输出2位]
测试结果3: 输出过少|用户输出数据少于标准输出的50%[标准输出10位|选手输出2位]
测试结果4: 通过本测试点|有效耗时47:ms
测试结果5: 运行错误|普通保护错误
测试结果6: 通过本测试点|有效耗时156:ms
测试结果7: 输出过少|用户输出数据少于标准输出的50%[标准输出10位|选手输出2位]
测试结果8: 通过本测试点|有效耗时172:ms
测试结果9: 运行错误|普通保护错误
测试结果10: 输出过少|用户输出数据少于标准输出的50%[标准输出10位|选手输出1位]
补充下,这是测试结果