Cod sursa(job #2953687)
Utilizator | Data | 11 decembrie 2022 23:08:00 | |
---|---|---|---|
Problema | Parcurgere DFS - componente conexe | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.64 kb |
#include <bits/stdc++.h>
using namespace std;
bool vf[400005];
vector<int> graf[300005];
bool dfs(int nod){
vf[nod] = 1;
for(auto newnod: graf[nod]){
if(vf[newnod] == 0){
dfs(newnod);
}
}
}
int main(void){
ofstream cout("dfs.out");
ifstream cin("dfs.in");
int n, m;
cin >> n >> m;
for(int i = 1;i<=m;i++){
int a, b;
cin>> a >> b;
graf[a].push_back(b);
graf[b].push_back(a);
}
int cnt = 0;
for(int i = 1;i<=n;i++){
if(vf[i] == 0){
cnt++;
dfs(i);
}
}
cout << cnt;
}