代码:
#include <iostream>
#include <cstdio>
#include <cmath>
#include <string>
using namespace std;
int n,m,x,y;
long long b[30][30];
bool a[30][30];
void work1(){
a[x][y]=1;
a[x+1][y+2]=1;
a[x+2][y+1]=1;
if(y>=2) a[x+1][y-2]=1;
if(y>=1) a[x+2][y-1]=1;
if(x>=1) a[x-1][y+2]=1;
if(x>=2) a[x-2][y+1]=1;
if(x>=1&&y>=2) a[x-1][y-2]=1;
if(x>=2&&y>=1) a[x-2][y-1]=1;
}
void work2(){
for(int i=0;i<=n;i++){
for(int j=0;j<=m;j++){
if(a[i][j]==0){
if(i==0 || j==0){
b[i][j]=1;
}else{
b[i][j]=b[i-1][j]+b[i][j-1];
}
}
}
}
}
int main(){
cin>>n>>m>>x>>y;
work1();
work2();
cout<<b[n][m];
return 0;
}
提交记录
请大家帮帮我!