感觉代码没问题
#include<bits/stdc++.h>
using namespace std;
short Bm,Bn,Cm,Cn,i,j;
long long w[25][25];
int main()
{
cin>>Bn>>Bm>>Cn>>Cm;
w[0][0]=1;
w[Cn][Cm]=0;
for(i=1;i<=Bn;i++){
if(Cm==0&&i==Cn)break;
w[i][0]=1;
}
for(i=1;i<=Bn;i++){
if(Cn==0&&i==Cm)break;
w[0][i]=1;
}
for(i=1;i<=Bn;i++){
for(j=1;j<=Bm;j++){
if( ( (i==Cn+2||i==Cn-2) && (j==Cm+1||j==Cm-1) )
||
( (i==Cn+1||i==Cn-1) && (j==Cm+2||j==Cm-2) )
||
(i==Cn)&&(j==Cm)){
w[i][j]=0;
}else{
w[i][j]=w[i-1][j]+w[i][j-1];
}
}
}
for(i=0;i<=Bn;i++){
for(j=0;j<=Bm;j++){
cout<<w[i][j]<<'\t';
}
cout<<endl;
}
cout<<w[Bn][Bm];
}