Pagini recente » Cod sursa (job #2728204) | Cod sursa (job #120406) | Cod sursa (job #2173058) | Cod sursa (job #2535333) | Cod sursa (job #164207)
Cod sursa(job #164207)
#include <cstdio>
#include <vector>
using namespace std;
const int N = 100000;
int n,m, nc;
vector<int> g[N];
vector<bool> used;
void df ( int x ) {
used[x] = true;
for (int i = 0; i < g[x].size(); ++i)
if (!used[g[x][i]])
df(g[x][i]);
}
int main() {
freopen("dfs.in","rt",stdin);
freopen("dfs.out","wt",stdout);
scanf("%d %d",&n,&m);
for (int i = 0; i < m; ++i) {
int f,t;
scanf("%d %d",&f,&t);
g[f].push_back(t);
g[t].push_back(f);
}
nc = 0;
used.resize(n,false);
for (int i = 0; i < n; ++i) {
if (!used[i]) {
++nc;
df(i);
}
}
printf("%d\n",nc);
return 0;
}