Pagini recente » Cod sursa (job #1957749) | Cod sursa (job #1538424) | Cod sursa (job #2657549) | Cod sursa (job #1062546) | Cod sursa (job #2302139)
#include<stdio.h>
int n,m,u[100001],c,i,x,y;
typedef struct O
{
int x;
O *a;
}*P;
P v[100001],p;
void D(int i)
{
P p;
for(u[i]=1,p=v[i];p;p=p->a)
if(!u[p->x])
D(p->x);
}
int main()
{
freopen("dfs.in","r",stdin),freopen("dfs.out","w",stdout),scanf("%d%d",&n,&m);
while(m--)
{
scanf("%d%d",&x,&y);
p=new O;
p->x=y,p->a=v[x],v[x]=p;
p->x=x,p->a=v[y],v[y]=p;
}
for(i=1;i<=n;i++)
if(!u[i])
c++,D(i);
printf("%d",c);
}