#include<bits/stdc++.h>
using namespace std;
const int dir[8][2]={{1,2},{1,-2},{2,1},{2,-1},{-1,2},{-1,-2},{-2,1},{-2,-1}};
bool d[30][30];
long long dp[30][30],n,m,cx,cy;
int main(){
cin>>n>>m>>cx>>cy;
d[cx][cy]=true;
for(int i=0;i<8;i++){
int tx=cx+dir[i][0],ty=cy+dir[i][1];
if(tx>=0&&tx<=n&&ty>=0&&ty<=m) d[tx][ty]=true;
}
dp[0][0]=1;
for(int i=0;i<=n;i++){
for(int j=0;j<=m;j++){
if(d[i][j]==false){
if(i) dp[i][j]+=dp[i-1][j];
if(j) dp[i][j]+=dp[i][j-1];
}
}
}
cout<<dp[n][m];
return 0;
}
P1002 [NOIP2002 普及组] 过河卒
最新推荐文章于 2024-09-14 22:25:23 发布