Cod sursa(job #2227880)

Utilizator inquisitorAnders inquisitor Data 2 august 2018 09:49:03
Problema Parcurgere DFS - componente conexe Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <cstdio>

int i,n,m,v[100001],x,y,aux,nr=0;
FILE*f=freopen("dfs.in","r",stdin);
FILE*g=freopen("dfs.out","w",stdout);

__attribute__((always_inline)) int Find(int x)
{
    while(v[x] != x)
    {
        x = v[x];
    }

    return x;
}

int main()
{
    scanf("%d %d", &n, &m);

    for(i=1; i<=n; i++)   v[i]=i;
    for(i=1;i<=m;i++)
    {scanf("%d %d", &x, &y);

     if(Find(x)!=Find(y)){
            nr++; v[x]=y;
        }
    }
    printf("%d\n" ,n-nr);
}