0分求助
查看原帖
0分求助
1059639
_is_laofang_楼主2024/6/23 09:32
#include<bits/stdc++.h>
using namespace std;
int dx[]={-1,-2,-2,-1,1,2,2,1};
int dy[]={-2,-1,1,2,-2,-1,1,2};
int maze[20][20];
int main(){
	int n,m,x,y;
	cin>>n>>m>>x>>y;
	int ans=0;
	if(n==0&&m==0){
		cout<<1;
		return 0;
	}
	maze[0][0]=1;
	for(int i=0;i<=n;i++){
		for(int j=0;j<=m;j++){
			bool flag=1;
			if(i==0||j==0){
				maze[i][j]=1;
				continue;
			}
			for(int i=0;i<8;i++){
				int xx=x+dx[i];
				int yy=y+dy[i];
				if(xx==i&&yy==j){
					flag=0;
					maze[xx][yy]=0;
					break;
				}
			}
			if(flag==0)continue;
			maze[i][j]=maze[i-1][j]+maze[i][j-1];
			if(i==n&&j==m){
				cout<<maze[i][j];
				return 0;
			}
		}
	}
	return 0;
}
2024/6/23 09:32
加载中...