Cod sursa(job #2730253)

Utilizator LeonGSLeo Jechiu LeonGS Data 25 martie 2021 23:42:22
Problema Parcurgere DFS - componente conexe Scor 35
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.52 kb
#include <bits/stdc++.h>
using namespace std;
vector<int> adj[100000];
bool visited[1000000];
int n,m,x,y,cnt=0;

void dfs(int s) {
if (visited[s]) return;
visited[s] = true;
for (auto u: adj[s]) {
dfs(u);
}
}

int main(){
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
cin >> n >> m;
for(int i=0; i<m; i++){
    cin >> x >> y;
    adj[x].push_back(y);
    adj[y].push_back(x);
}
for(int j=0; j<n; j++){
    if(visited[j]==false){
        dfs(j);
        cnt++;
    }
}
cout << cnt;
}