3、4过不了,开long long了
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
long long a[40][40]={};
bool b[40][40]={};
int n,m,mx,my;
cin>>n>>m>>mx>>my;
n+=2;m+=2;mx+=2;my+=2 ;
for(int i=2;i<=n;i++){
for(int j=2;j<=m;j++){
b[i][j]=1;
}
}
b[mx+2][my+1]=0;
b[mx+1][my+2]=0;
b[mx-1][my+2]=0;
b[mx-2][my+1]=0;
b[mx-2][my-1]=0;
b[mx-1][my-2]=0;
b[mx+1][my-2]=0;
b[mx+2][my-1]=0;
b[mx][my]=0;
for(int i=2;i<=n;i++){
if(b[i][2]){
a[i][2]=1;
}else{
a[i][2]=0;
}
}
for(int j=2;j<=m;j++){
if(b[2][j]){
a[2][j]=1;
}else{
a[2][j]=0;
}
}
for(int i=3;i<=n;i++){
for(int j=3;j<=m;j++){
if(b[i][j]){
a[i][j]=a[i-1][j]+a[i][j-1];
}else{
a[i][j]=0;
}
}
}
cout<<a[n][m];
return 0;
}