Pagini recente » Cod sursa (job #581435) | Cod sursa (job #1359401) | Cod sursa (job #3168539) | Cod sursa (job #2717477) | Cod sursa (job #1048143)
#include<stdio.h>
#include<vector>
using namespace std;
int i, j, n, m, viz[100001];
vector<int> G[100001];
void dfs(int x) {
viz[x] = 1;
for (int t = 0; t < G[x].size(); t++)
if (viz[G[x][t]] == 0) dfs(G[x][t]);
}
int main () {
freopen ("dfs.in", "rt", stdin);
freopen ("dfs.out", "wt", stdout);
scanf ("%d%d", &n, &m);
int x, y;
for (int i = 0; i < n; i++) {
scanf ("%d%d", &x, &y);
G[x].push_back(y); G[y].push_back(x);
}
int i = 0, nc = 0;
while (i < n) {
dfs(i);
nc++;
}
printf ("%d\n", nc);
return 0;
}