#include<iostream>
using namespace std;
int main(){
long long map[22][22]={},x[22][22]={},hx,hy,mx,my;
cin>>mx>>my>>hx>>hy;
hx++;
hy++;
mx++;
my++;
int hxx[8]={2,2,-2,-2,1,1,-1,-1};
int hyy[8]={1,-1,1,-1,2,-2,2,-2};
for(int i=1;i<=21;i++){
map[i][1]=1;
map[1][i]=1;
}
for(int i=0;i<=7;i++){
if(hx+hxx[i]>=1&&hx+hxx[i]<=mx&&hy+hyy[i]>=1&&hy+hyy[i]<=my){
x[hx+hxx[i]][hy+hyy[i]]=1;
map[hx+hxx[i]][hy+hyy[i]]=0;
}
}
x[hx][hy]=1;
map[hx][hy]=0;
for(int i=2;i<=mx;i++){
for(int j=2;j<=my;j++){
if(x[i][j]!=1){
map[i][j]=map[i-1][j]+map[i][j-1];
}
}
}
cout<<map[mx][my];
return 0;
}
希望可以指出 错误,而不是单纯的AC代码