Pagini recente » Cod sursa (job #1634954) | Cod sursa (job #853401) | Cod sursa (job #655689) | Cod sursa (job #576341) | Cod sursa (job #2924493)
#include <iostream>
#include <fstream>
#include <vector>
int mark[100001];
std::vector<std::vector<int>> v(100001);
void dfs(int nod)
{
mark[nod] = 1;
for (auto &&i : v[nod])
{
if (mark[i] == 0)
{
dfs(i);
}
}
}
int main()
{
std::ifstream cin("dfs.in");
std::ofstream cout("dfs.out");
int n, m, a, b, compConex = 0;
cin >> n >> m;
for (size_t i = 0; i < m; i++)
{
cin >> a >> b;
v[a].push_back(b);
v[b].push_back(a);
}
for (size_t i = 1; i <= n; i++)
{
if (mark[i] == 0)
{
dfs(i);
compConex++;
}
}
cout << compConex << '\n';
}