讨论 / 为什么60
wujingyu 2014-04-08 07:41:02
点我顶贴 收藏 删除
var n,m,x,y,i,j:integer;

a,b:array[0..1000,0..1000] of int64;

begin

readln(n,m,x,y);

b[x,y]:=1;

if (x+1<=n)and(y-2>=0) then b[x+1,y-2]:=1;

if (x+2<=n)and(y-1>=0) then b[x+2,y-1]:=1;

if (x+1<=n)and(y+2<=m) then b[x+1,y+2]:=1;

if (x+2<=n)and(y+1<=m) then b[x+2,y+1]:=1;

if (x-1>=0)and(y+2<=m) then b[x-1,y+2]:=1;

if (x-2>=0)and(y+1<=m) then b[x-2,y+1]:=1;

if (x-2>=0)and(y-1>=0) then b[x-2,y-1]:=1;

if (x-1>=0)and(y-2>=0) then b[x-1,y-2]:=1;

for i:=1 to n do if b[0,i]=0 then a[0,i]:=1 else break;

for i:=1 to m do if b[i,0]=0 then a[i,0]:=1 else break;

for i:=1 to n do

for j:=1 to m do

if b[i,j]=0 then a[i,j]:=a[i-1,j]+a[i,j-1];

write(a[n,m]);

end.

查看更多回复
提交回复