求助,,为什么样例我输出17.。。。。

P1644 跳马问题

帮助大佬排个版 ```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


|