帮助大佬排个版
```pascal
var map:array[0..18,0..18] of boolean;
gox:array[1..4] of longint=(2,1,-1,-2);
goy:array[1..4] of longint=(1,2,2,1);
a,b,sum,n,m:longint;
procedure tiao(x,y:longint);
var i,j,gx,gy:longint;
begin
if(x=m)and(y=n) then begin inc(sum);exit;end;
for i:=1 to 4 do
begin
gx:=x+gox[i];
gy:=y+goy[i];
if (gx in [0..m])and(gy in [0..n])and(map[gx,gy])
then begin
map[gx,gy]:=false;
tiao(gx,gy);
map[gx,gy]:=true;
end;
end;
end;
begin
readln(m,n)
for a:=1 to m do
for b:=1 to n do
map[a,b]:=true;
tiao(0,0);
writeln(sum);
end.
```
by 海滨WA声 @ 2018-05-12 11:04:13
map数组会超界
初始化得大一点or用false标记已走过的
by Matoi @ 2018-05-22 17:31:00
跳两步之后y可能是0哦
by hjx123456 @ 2020-12-12 13:25:24