Pagini recente » Cod sursa (job #1085773) | Cod sursa (job #1836418) | Cod sursa (job #2797627) | Cod sursa (job #735116) | Cod sursa (job #2449661)
#include <cstdio>
using namespace std;
const int N = 100001;
int n, m, s;
int t[N];
int par(int a) {
if (t[a] == a)
return a;
else
return t[a] = par(t[a]);
}
int main() {
freopen("dfs.in", "r", stdin);
freopen("dfs.out", "w", stdout);
scanf("%d %d", &n, &m);
s = n;
for (int i = 1; i <= n; i++)
t[i] = i;
for (int i = 1; i <= m; i++) {
int a, b;
scanf("%d %d", &a, &b);
a = par(a);
b = par(b);
if (a != b) {
s--;
t[a] = b;
}
}
printf("%d\n", s);
return 0;
}