求助,MLE
查看原帖
求助,MLE
749743
e4fsrc2e4fsrc2楼主2022/8/24 19:53

代码如下

#include<bits/stdc++.h>
using namespace std;
int ma,mb,n,m,ans=0;
int dis[8][2]={{-2,1},{-1,2},{1,2},{2,1},{2,-1},{1,-2},{-1,-2},{-2,-1}};
int dx[2]={0,1},dy[2]={1,0};
bool vis[25][25];
int mp[25][25];
void dfs(int x,int y){
	if(x==n&&y==m){
		ans++;
		return;
	}
	for(int i=0; i<2; i++){
		int nx=x+dx[i];
		int ny=x+dy[i];
		if(nx>=0&&ny>=0&&nx<=n&&ny<=m&&!vis[nx][ny])dfs(nx,ny);
	}
}
int main(){
	cin>>n>>m>>ma>>mb;
	vis[ma][mb]=true;
	for(int i=0; i<8; i++){
		int nx=ma+dis[i][0],
			ny=mb+dis[i][1];
		if(nx>=0&&ny>=0)vis[nx][ny]=true;
	}
		
	dfs(0,0);
	cout<<ans;
	return 0;
}
2022/8/24 19:53
加载中...