求调
查看原帖
求调
1436449
ding20120116楼主2025/1/31 16:49

求调

哪里CE了?

提交记录1

提交记录2

#include<bits/stdc++.h>
using namespace std;
#define int long long
int xy[4][2]={{0,1},{1,0},{0,-1},{-1,0}};
int nx,ny,ex,ey,n,m,a,b,mk[100010][100010],h[100010][100010];
struct node{
	int x,y,t;
};
queue<node> q;
void bfs(){
	while(!q.empty()){
		node x=q.front();q.pop();
		for(int i=0;i<4;i++){
			int xx=x.x+xy[i][0],yy=x.y+xy[i][1];
			if(xx<1||yy<1||xx>n||yy>m||mk[xx][yy]) continue;
			mk[xx][yy]=1;
			h[xx][yy]=x.t+1;
			q.push((node){xx,yy,x.t+1});
		}
	}
	return;
}
signed main(){
	cin>>n>>m>>a>>b;
	for(int i=1;i<=a;i++){
		cin>>ex>>ey;
		mk[ex][ey]=1;
		q.push((node){ex,ey,0});
	}
	bfs();
	for(int i=1;i<=b;i++){
		cin>>nx>>ny;
		cout<<h[nx][ny]<<"\n";
	}
	return 0;
}

本地没问题,可一提交就CE

2025/1/31 16:49
加载中...