Cod sursa(job #1435885)

Utilizator lraduRadu Lucut lradu Data 14 mai 2015 18:50:07
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <fstream>
#include <vector>
#define mx 100005


using namespace std;
int n,m,x,y,viz[mx],cnt;
vector<int> v[mx];

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

}

int main()
{

 ifstream f("dfs.in");
 ofstream g("dfs.out");

 f>>n>>m;
 for(int i=0; i<m; i++)
 {
     f>>x>>y;
     v[x].push_back(y);
     v[y].push_back(x);
 }

 for (int i=1; i<=n; i++)
    if(!viz[i])
 {
     cnt++;
     dfs(i);
 }
    g<<cnt<<'\n';

 return 0;
}