Pagini recente » Cod sursa (job #2529600) | Cod sursa (job #2608318) | Cod sursa (job #2077788) | Cod sursa (job #2900962) | Cod sursa (job #2609536)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("dfs.in");
ofstream fout ("dfs.out");
vector <int> adjacent [100005];
int visited[100005];
int N, M;
void dfs (int node)
{
visited[node] = 1;
for (int i : adjacent[node])
if (!visited[i])
dfs (i);
}
int main ()
{
fin >> N >> M;
for (int i = 1; i <= M; i++)
{
int x, y;
fin >> x >> y;
adjacent[x].push_back (y);
adjacent[y].push_back (x);
}
int conex_parts = 0;
for (int i = 1; i <= N; i++)
if (!visited[i])
{
conex_parts++;
dfs (i);
}
fout << conex_parts;
}