提交时间:2023-10-04 08:14:15
运行 ID: 104706
#include <bits/stdc++.h> using namespace std; int main() { int n,m; cin>>n>>m; int x,y; cin>>x>>y; m++;n++;x++;y++; bool a[n+10][m+10]; long long int b[n+10][m+10]; memset(a,true,sizeof(a)); memset(b,0,sizeof(b)); a[x][y]=false; a[x+2][y+1]=false; a[x+2][y-1]=false; a[x+1][y+2]=false; a[x+1][y-2]=false; a[x-1][y+2]=false; a[x-1][y-2]=false; a[x-2][y+1]=false; a[x-2][y-1]=false; b[1][1]=1; for(int i=1;i<=n;i++) { for(int w=1;w<=m;w++) { if(a[i][w]) b[i][w]+=b[i][w-1]+b[i-1][w]; } } } cout<<b[n][m]; return 0; }