Pagini recente » Cod sursa (job #2438302) | Cod sursa (job #1297967) | Cod sursa (job #1463766) | Cod sursa (job #185967) | Cod sursa (job #2007429)
#include <bits/stdc++.h>
#define nmax 100002
using namespace std;
ifstream fin ("dfs.in");
ofstream fout ("dfs.out");
vector<int> G[nmax];
int N,M,V[nmax];
void DFS(int nod, int nr){
V[nod]=nr;
for(vector<int>::iterator it=G[nod].begin();it!=G[nod].end();++it)
if(V[*it]==-1)DFS(*it,nr);
}
int main()
{
int a,b,n=0;
fin>>N>>M;
for(int i=1;i<=M;++i){
fin>>a>>b;
G[a].push_back(b);
G[b].push_back(a);
}
memset(V,-1,sizeof(V));
for(int i=1;i<=N;++i)
if(V[i]==-1)DFS(i,++n);
fout<<n<<endl;
return 0;
}