Cod sursa(job #1445850)

Utilizator ASTELOTudor Enescu ASTELO Data 31 mai 2015 11:10:58
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<cstdio>
#include<vector>
using namespace std;
vector<int> v[100001];
int vc[100001];
void dfs(int nod)
    {
    vc[nod]=1;
    int i;
    for(i=0;i<v[nod].size();i++)
        if(vc[v[nod][i]]==0)
            dfs(v[nod][i]);
    }
int main ()
{
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
int n,i,j,k,l,s=0,m;
scanf("%d%d",&n,&m);
for(i=1;i<=m;i++)
    {
    scanf("%d%d",&k,&l);
    v[k].push_back(l);
    v[l].push_back(k);
    }
for(i=1;i<=n;i++)
    {
    if(vc[i]==0)
        {
        dfs(i);
        s++;
        }
    }
printf("%d",s);
return 0;
}