Pagini recente » Cod sursa (job #1053727) | Cod sursa (job #2701991) | Cod sursa (job #2468562) | Cod sursa (job #812865) | Cod sursa (job #316485)
Cod sursa(job #316485)
#include<cstdio>
#include<vector>
#define MAXN 100005
using namespace std;
int i , j , k , path[MAXN] ,comp , Sum , N , M , a, b;
vector <int> G[MAXN];
void read()
{
scanf("%d %d",&N ,&M);
for( ; M -- ; ) {
scanf("%d %d",&a,&b);
G[a].push_back(b),G[b].push_back(a);
}
}
void DFS(int X)
{
int j;
if(path[X]) return ;
path[X] = 1;
for( j = 0 ; j < G[X].size() ; j++)
if(!path[G[X][j]])
DFS(G[X][j]);
}
int main()
{
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
read();
for( i = 1 ; i <= N ; i++){
if(!path[i]) {comp ++, DFS(i);}
}
printf("%d\n",comp);
return 0;
}