Cod sursa(job #2761116)

Utilizator NeuerRaducu Ioan Stefan Neuer Data 30 iunie 2021 17:41:34
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
///#include <iostream>
#include <fstream>
#include <set>
const int SIZE = 1e5+10;

using namespace std;

ifstream cin("dfs.in");
ofstream cout("dfs.out");

int n, m, cnt;
set <int> v[SIZE];
bool viz[SIZE];

void readit()
{
    int y, x;
    cin>>n>>m;
    for(int i=1; i<=m; i++)
    {
        cin>>y>>x;
        v[x].insert(y);
        v[y].insert(x);
    }
}

void DFS(int nod)
{
    viz[nod]=1;
    for(auto nxt : v[nod])
        if(!viz[nxt])
            DFS(nxt);
}

int main()
{
    readit();
    for(int i=1; i<=n; i++)
        if(!viz[i]) DFS(i), cnt++;
    cout<<cnt;
    return 0;
}