P1002 过河卒
#include<bits/stdc++.h>
using namespace std;
long long n,m,a,b,f[110][110],g[110][110];
int main(){
cin>>n>>m>>a>>b;
g[a][b]=1;
g[a-2][b-1]=1;g[a-2][b+1]=1;
g[a-1][b-2]=1;g[a-1][b+2]=1;
g[a+1][b-2]=1;g[a+1][b+2]=1;
g[a+2][b-1]=1;g[a+2][b+1]=1;
if(g[0][0]==0) f[0][0]=1;
else{cout<<0;return 0;}
for(int i=0;i<=n;i++){
if(g[i][0]==0) f[i][0]=1;
else f[i][0]=0;
}
for(int j=0;j<=m;j++){
if(g[0][j]==0) f[0][j]=1;
else f[0][j]=0;
}
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++){
if(g[i][j]==0) f[i][j]=f[i-1][j]+f[i][j-1];
else f[i][j]=0;
}
cout<<f[n][m];
return 0;
}
第1,4个点RE了求调