Cod sursa(job #347777)

Utilizator miticaMitica mitica Data 13 septembrie 2009 12:49:27
Problema Parcurgere DFS - componente conexe Scor 5
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <stdio.h>

int n,m,x,y,a[1005][1005],p,nc,vb,v[100005],i;

void DF(int k)
{
     int i;
     v[k]=1;
     for (i=1;i<=a[x][0];i++)
         if (!v[i])
            DF(i);
}

int main()
{
    freopen("dfs.in","r",stdin);
    freopen("dfs.out","w",stdout);
    scanf("%d %d", &n, &m);
    for (i=1;i<=m;i++)
        {
             scanf("%d %d", &x, &y);
             a[x][0]++;
             a[x][a[x][0]]=y;
             a[y][0]++;
             a[y][a[y][0]]=x;
        }     
    for (i=1;i<=n;i++)
        if (!v[i])
           {
                  nc++;
                  DF(i);
           }
    printf("%d", nc);
    return 0;
}