Pagini recente » Cod sursa (job #2268574) | Cod sursa (job #3239276) | Cod sursa (job #3168055) | Cod sursa (job #888779) | Cod sursa (job #2227895)
#include <cstdio>
int main()
{
freopen("dfs.in", "r", stdin);
freopen("dfs.out", "w", stdout);
int nodes, edges, parent[100001], u, v, aux, conexParts = 0;
scanf("%d %d", &nodes, &edges);
for(int i = 1; i <= nodes; i++)
{
parent[i] = i;
}
for(int i = 1; i <= edges; i++)
{
scanf("%d %d", &u, &v);
while(u != parent[u]) aux = parent[parent[u]], parent[u] = aux, u = aux;
while(v != parent[v]) aux = parent[parent[v]], parent[v] = aux, v = aux;
if(u != v) conexParts++; v[u] = v;
}
printf("%d", N - conexParts);
}