编译失败
查看原帖
编译失败
1314666
a2797370558楼主2024/4/6 16:27

为毛在洛谷编译失败,我vs正确输出了,求助好心大佬

#include<bits/stdc++.h>
using namespace std;
int ans = 0; int matrix[100][100], vis[100][100] = { 0 };
int m, n;
int dx[4] = { 1,0,-1,0 };
int dy[4] = { 0,1,0,-1 };
struct xibao {
	int x;
	int y;
};
deque<xibao> q;
void bfs(int x, int y) {
	vis[x][y] = 1;
	xibao nq; nq.x = x; nq.y = y;
	q.push_back(nq);
	while (!q.empty()) {
		xibao nnq1 = q.front();
		for (int i = 0; i < 4; i++) {
			xibao nnq=nnq1;
			nnq.x+= dx[i];
			nnq.y+= dy[i];
			
			if (matrix[nnq.x][nnq.y] == 0 || vis[nnq.x][nnq.y] == 1)
				continue;
			q.push_back(nnq);
			vis[nnq.x][nnq.y]=1;
			
		}q.pop_front();
	}
	return;
}

int main() {
	cin >> n >> m;
	for (int i = 1; i <= n; i++)
		for (int j = 1; j <= m; j++)
			scanf_s("%1d", &matrix[i][j]);
	for (int i = 1; i <= n; i++)
		for (int j = 1; j <= m; j++) {
			if (matrix[i][j] && vis[i][j] != 1)
			{
				bfs(i, j);
				ans++;
			}
		}
	cout << ans;
	return 0;
}
2024/4/6 16:27
加载中...