Cod sursa(job #1882942)

Utilizator passwordCiaciru Ana Maria password Data 17 februarie 2017 16:52:26
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <bits/stdc++.h>
#define nmax 100005
using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
int n,m;
vector <int> V[nmax];
bool viz[nmax];
int nr;

void read()
{int i,x,y;
 f>>n>>m;
 for(i=1;i<=m;i++)
   {f>>x>>y;
    V[x].push_back(y);
    V[y].push_back(x);
   }
}

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

void write()
{int i;
 for(i=1;i<=n;i++)
    if(viz[i]==0) {nr++;dfs(i);}
 g<<nr<<endl;
}

int main()
{read();
 write();
 return 0;
}