运行时错误
查看原帖
运行时错误
690669
Beacon_wolf楼主2023/11/20 22:01
#include <bits/stdc++.h>
using namespace std;
const int N = 100005;
int n,m,a,b,u[N][3],v[N][3],vis[505][505] = {0},ans[505][505] = {0},cnt = 0;
int dfs(int x,int y){
	vis[x][y] = 1,ans[x][y] = cnt;
	int ux[4] = {-1,0,1,0};
	int uy[4] = {0,1,0,-1};
	for(int i = 0;i < 4;i++)
	{
		int nx = ux[i] + x;
		int ny = uy[i] + y;
		if(nx <= n && ny <= m && nx >= 1 && ny >= 1 && vis[nx][ny] == 0 && ans[nx][ny] == 0) cnt++;dfs(nx,ny);
	}
}
int main(){
	cin >> n >> m >> a >> b;
	for(int i = 1;i <= a;i++) cin >> u[i][1] >> u[i][2];
	for(int i = 1;i <= b;i++) cin >> v[i][1] >> v[i][2];
	for(int i = 1;i <= a;i++) cnt = 0,dfs(u[i][1],u[i][2]);
	for(int i = 1;i <= b;i++) cout << ans[v[i][1]][v[i][2]] << endl; 
} 
2023/11/20 22:01
加载中...