Pagini recente » Cod sursa (job #1253013) | Cod sursa (job #2965284) | Cod sursa (job #643304) | Cod sursa (job #417307) | Cod sursa (job #164208)
Cod sursa(job #164208)
#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);
--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;
}