Mai intai trebuie sa te autentifici.
Cod sursa(job #1993040)
Utilizator | Data | 22 iunie 2017 10:50:48 | |
---|---|---|---|
Problema | Parcurgere DFS - componente conexe | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.61 kb |
#include <bits/stdc++.h>
using namespace std;
bool viz[100001];
vector<int> v[100001];
ifstream f("dfs.in");
ofstream g("dfs.out");
void dfs(int nod){
viz[nod] = true;
for(int i = 0; i < v[nod].size(); i++){
if(!viz[v[nod][i]]) dfs(v[nod][i]);
}
}
int main(){
int n, m;
f >> n >> m;
for(int i = 0, a, b; i < m; i++){
f >> a >> b;
v[a].push_back(b);
v[b].push_back(a);
}
int cnt = 0;
for(int i = 1; i <= n; i++){
if(!viz[i]){
cnt ++;
dfs(i);
}
}
g << cnt;
return 0;
}