#include<bits/stdc++.h>
using namespace std;
const int N=100;
long long dp[N][N];
int dxy[9][2]={
{-1,-2},{-2,-1},{-2,1},{-1,2},{1,2},{2,1},{2,-1},{1,-2},{0,0}
};
bool vis[N][N];
int main(){
int n,m,x,y;
cin>>n>>m>>x>>y;
for(int i=0;i<9;i++){
int xx=x+dxy[i][0];
int yy=y+dxy[i][1];
if(xx>=0&&xx<=n&&yy>=0&&yy<=m){
vis[xx][yy]=1;
}
}
for(int i=0;i<=max(n,m);i++){
dp[0][i]=1;
dp[i][0]=1;
dp[i][0]*=(vis[i][0]==0?1:0);
dp[0][i]*=(vis[0][i]==0?1:0);
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
dp[i][j]=dp[i-1][j]+dp[i][j-1];
dp[i][j]*=(vis[i][j]==0?1:0);
}
}
cout<<dp[n][m];
return 0;
}
3、4点错,
求助各位大佬