0
已采纳
董博
初级守护
初级守护
#include<iostream>
#include<cstring>
#include<string>
using namespace std;
int dir[9][2]={{0,0},{1,2},{2,1}};
bool g[1005][1005];
int f[1005][1005];
int main(){
int a,b,n,m,na,nb,o=0,k=0;
cin>>n>>m>>a>>b;
f[0][0]=1;
for(int i=0;i<=n;i++){
for(int j=0;j<=m;j++){
if(i==0&&j==0||i==a||j==b){
continue;
}
int l1=i-2,r1=j-1,l2=i-1,r2=j-2;
if(l1>=0||r1>=0){
f[i][j]+=f[l1][r1];
}
if(l2>=0||r2>=0){
f[i][j]+=f[l2][r2];
}
}
}
cout<<f[n][m];
return 0;
}//2742
0