Cod sursa(job #2667726)

Utilizator Axinte_CalinAxinte Calin Axinte_Calin Data 3 noiembrie 2020 19:34:46
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <bits/stdc++.h>
#include <fstream>
using namespace std;

#define pb push_back
const int NMax = 1e+6 + 100;
fstream fin("dfs.in",ios::in),fout("dfs.out",ios::out);
vector<int> adj[NMax];
bool viz[NMax];
int dfs(int k)
{
    viz[k]=true;
    for(auto it=adj[k].begin();it!=adj[k].end();++it)
        if(!viz[*it])
            dfs(*it);
}
int main()
{
    int n,m,i,j,c=0;
    fin>>n>>m;
    while(m--)
    {
        fin>>i>>j;
        adj[i].pb(j),
        adj[j].pb(i);
    }
    for(int i=1;i<=n;i++){
      if(!viz[i])
        dfs(i),c++;
    }
    fout<<c<<'\n';
}