Pagini recente » Cod sursa (job #589264) | Cod sursa (job #3162363) | Cod sursa (job #487818) | Cod sursa (job #2408926) | Cod sursa (job #2288994)
#include <cstdio>
#include <bitset>
#include <vector>
using std::bitset;
using std::vector;
const int MAX = 100002;
int n,m,nr;
vector<int> G [MAX];
bitset<MAX> viz;
void DFS(int node){
viz[node]=true;
for(auto i:G[node]){
if(!viz[i]){
DFS(i);
}
}
}
int main() {
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
scanf("%d %d",&n,&m);
for(int i=0;i<m;++i){
int x,y;
scanf("%d %d",&x,&y);
G[x].push_back(y);
G[y].push_back(x);
}
for(int i=1;i<=n;++i){
if(!viz[i]){
++nr;
DFS(i);
}
}
printf("%d",nr);
return 0;
}