不懂就问为啥RE了?
查看原帖
不懂就问为啥RE了?
1395519
_21_3tzhz楼主2024/10/19 11:13
#include<bits/stdc++.h>
using namespace std;
int arr[505][505]={0};
int vis[505][505]={0};
const int dx[4]={-1,1,0,0};
const int dy[4]={0,0,-1,1};
typedef struct {
	int x;
	int y;
} p;
p gry[100005];
p lz[100005];
int n,m,a,b;

int bfs(){
	queue<p> q;
	int i;
	for(i=1;i<=a;i++){
		q.push(gry[i]);
		arr[gry[i].x][gry[i].y]=0;
		vis[gry[i].x][gry[i].y]=1;
	}
	while(!q.empty()){
		p now;
		now=q.front();
		q.pop();
		for(i=0;i<4;i++){
			int xx=now.x+dx[i];
			int yy=now.y+dy[i];
			if(xx<=0||xx>n||yy<=0||yy>m)
				continue;
			if(vis[xx][yy]==1)
				continue;
			vis[xx][yy]=1;
			arr[xx][yy]=arr[now.x][now.y]+1;
			p next;
			next.x=xx;
			next.y=yy;
			q.push(next);
		}
	}	
}

int main(){
	cin>>n>>m>>a>>b;
	int j,i;
	for(i=1;i<=a;i++){
		cin>>gry[i].x>>gry[i].y;
	}
	for(i=1;i<=b;i++){
		cin>>lz[i].x>>lz[i].y;
	}
	
	bfs();
	
	for(i=1;i<=b;i++){
		cout<<arr[lz[i].x][lz[i].y]<<endl;
	}
}

全 RE 求各位大佬看看 但是不知道为什么在我自己的电脑上可以正常运行

2024/10/19 11:13
加载中...