程式碼
include <iostream>
#include <vector>
using namespace std;
int fr[10001][10001], kn[10001];
void dfs(int graph[][10001], int visited[], int n, int curr) {
visited[curr] = 1;
for(int i = 1 ; i <= n ; i ++) {
if (graph[curr][i] && !visited[i]) dfs(graph, visited, n, i);
}
}
int main() {
cin.tie(0);
ios::sync_with_stdio(0);
int n, m;
cin >> n >> m;
for (int i = 0 ; i < n ; i ++) fill(fr[i], fr[i]+n+1, 0);
for (int i = 0 ; i < m ; i ++) {
int a, b;
cin >> a >> b;
fr[a][b] = 1;
fr[b][a] = 1;
}
fill(kn, kn+n+1, 0);
vector <int> rec;
for(int i = 1 ; i <= n ; i ++) {
if (!kn[i]) {
rec.push_back(i);
dfs(fr, kn, n, i);
}
}
int len = rec.size();
cout << "[";
for (int i = 0 ; i < len ; i ++) cout << rec[i] << ",]"[i+1 == len];
cout << "\n";
return 0;
}
NA(0%),全部記憶體區段錯誤
請問怎麼辦???