MLE求助
查看原帖
MLE求助
498049
Doctor_zhc楼主2022/4/30 20:20

大佬帮忙看一看啊

#include<bits/stdc++.h> 
using namespace std;
int n,m,xxx,yyy;
int dx[8]={1,1,-1,-1,2,2,-2,-2};
int dy[8]={-2,2,-2,2,-1,1,-1,1};
int mapp[401][401];
struct node{
	int x,y,step;
}t;
queue <node> q;
bool visit[401][401];
int main(){
	memset(mapp,-1,sizeof(mapp));
	scanf("%d%d%d%d",&n,&m,&xxx,&yyy);
//	for(int i=1;i<=n;i++){
//		for(int j=1;j<=m;j++){
//			printf("%d ",mapp[i][j]);
//		}
//		printf("\n");
//	}
	q.push(node{xxx,yyy,0});
	visit[xxx][yyy]=1;
	mapp[xxx][yyy]=0;
	while(!q.empty()){
		t=q.front();q.pop();
		for(int i=0;i<8;i++){
			int xx=t.x+dx[i];
			int yy=t.y+dy[i];
			if(xx>0&&xx<=n&&yy>0&&yy<=m&&!visit[xx][yy]){
				q.push((node){xx,yy,t.step+1});
				mapp[xx][yy]=t.step+1;
			}
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			printf("%-5d ",mapp[i][j]);
		}
		printf("\n");
	}
	return 0;
}
2022/4/30 20:20
加载中...