Pagini recente » Cod sursa (job #1378411) | Cod sursa (job #1726459) | Cod sursa (job #2076328) | Cod sursa (job #2591830) | Cod sursa (job #276581)
Cod sursa(job #276581)
#include<stdio.h>
struct nod { int v;
nod *next;
} *v[100010];
long n,m,pus[100010],cont;
void citire()
{ long i,x,y;
nod *nou;
freopen("dfs.in","r",stdin);
scanf("%ld%ld%ld",&n,&m);
for(i=1;i<=m;i++)
{ scanf("%ld%ld",&x,&y);
nou=new nod;
nou->v=y;
nou->next=v[x];
v[x]=nou;
nou=new nod;
nou->v=x;
nou->next=v[y];
v[y]=nou;
}
}
void df(long k)
{ nod *p;
pus[k]=1;
p=v[k];
while(p!=NULL)
{ if(pus[p->v]==0) df(p->v);
p=p->next;
}
}
int main()
{ freopen("dfs.out","w",stdout);
long i;
nod *p;
citire();
for(i=1;i<=n;i++)
if(pus[i]==0){ df(i);
cont++;
}
printf("%ld",cont);
return 0;
}