讨论 / 我哪错了
0*1 2013-08-12 00:33:00
点我顶贴 收藏 删除
const

d1:array[1..4]of -1..1=(-1,0,1,0);

d2:array[1..4]of -1..1=(0,-1,0,1);

var

a:array[0..1001,0..1001]of 0..1;

h:array[1..10000001,1..3]of longint;

ch:char;

i,j,n,q,w,t,y:longint;

begin

readln(n);

for i:=1 to n do

begin

for j:=1 to n do

begin

read(ch);

if ch='0' then a[i,j]:=1;

end;

readln;

end;

readln(h[1,1],h[1,2]);

readln(q,w);

h[1,3]:=0;

t:=1;

y:=1;

repeat

for i:=1 to 4 do

if a[h[t,1]+d1[i],h[t,2]+d2[i]]=1 then

begin

inc(y);

h[y,1]:=h[t,1]+d1[i];

h[y,2]:=h[t,2]+d2[i];

a[h[y,1],h[y,2]]:=0;

h[y,3]:=h[t,3]+1;

if (h[y,1]=q) and (h[y,2]=w) then

begin

writeln(h[y,3]);

halt;

end;

end;

inc(t);

until t>y;

end.

#1 0*1@2013-08-12 00:33:00
回复 删除
???

为什么没输出

查看更多回复
提交回复