Cod sursa(job #254631)

Utilizator valytgjiu91stancu vlad valytgjiu91 Data 7 februarie 2009 13:21:37
Problema Kdrum Scor 0
Compilator fpc Status done
Runda Stelele Informaticii 2009, clasele 9-10, ziua 2 Marime 1.03 kb
var f,g:text;
c,b,a:array[0..51,0..51]of longint;
x1,x2,y1,y2,n,j,m,i:byte;
k1,k:longint;
q:boolean;
 procedure lee(i,j:integer);
 begin
 if b[i,j+1]=0 then begin b[i,j+1]:=k;{c[i,j+1]:=c[i,j]*a[i,j+1];} q:=false; end;
 if b[i,j-1]=0 then begin b[i,j-1]:=k;{c[i,j-1]:=c[i,j]*a[i,j-1];} q:=false; end;
 if b[i+1,j]=0 then  begin b[i+1,j]:=k;{c[i+1,j]:=c[i,j]*a[i+1,j];}q:=false; end;
 if b[i-1,j]=0 then begin b[i-1,j]:=k; {c[i,j+1]:=c[i,j]*a[i-1,j];}q:=false; end;
 end;
begin
assign(f,'kdrum.in');
reset(f);
assign(g,'kdrum.out');
rewrite(g);

readln(f,n,m,k1);
readln(f,x1,y1,x2,y2);
for i:=1 to n do
 for j:=1 to m do
  read(f,a[i,j]);
close(f);
{}
 for i:=0 to n+1 do
   begin
   b[i,0]:=-1;
   b[i,m+1]:=-1;
   end;

for j:=0 to m+1 do
   begin
   b[0,j]:=-1;
   b[n+1,j]:=-1;
   end;
{}
 k:=1;
 q:=false;
 b[x1,y1]:=1;
 c[x1,y1]:=a[x1,y1];
 while q=false do
 begin
 q:=true;
 k:=k+1;
 for i:=1 to n do
 for j:=1 to m do
 if b[i,j]=k-1 then lee(i,j);
 end;
 writeln(g,b[x2,y2]);
 close(g);
end.