Cod sursa(job #2072926)

Utilizator toadehuPuscasu Razvan Stefan toadehu Data 22 noiembrie 2017 14:40:25
Problema Parcurgere DFS - componente conexe Scor 15
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <bits/stdc++.h>

#define Nmax 200001

using namespace std;

int v,m,viz[Nmax],k;

vector <int> adj[Nmax];

void dfs (int nod)
{
    viz[nod]=1;
    for (int i=0;i<adj[nod].size();i++)
    {
        if (!viz[adj[nod][i]])
        {
            dfs(adj[nod][i]);
        }
    }
}

int main()
{
    ifstream fin ("dfs.in");
    ofstream fout ("dfs.out");
    fin>>v>>m;
    for (int i=1;i<=m;++i)
    {
        int a,b;
        fin>>a>>b;
        adj[a].push_back(b);
        adj[b].push_back(a);
    }
    for (int i=1;i<=m;++i)
    {
        if (viz[i]==0)
        {
            k++;
            dfs(i);
        }
    }
    fout<<k;
}