Pagini recente » Istoria paginii utilizator/cozmarares | Istoria paginii runda/sim_oni_2010_ziua1 | Cod sursa (job #1948086) | Cod sursa (job #1634963) | Cod sursa (job #2900112)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
int n, m, viz[100005], sol;
vector <int> a[100005];
void Dfs(int x)
{
viz[x] = 1;
for (int i = 0; i < a[x].size(); i++)
if (viz[a[x][i]] == 0)
Dfs(a[x][i]);
}
int main()
{
int i, j, x, y;
fin >> n >> m;
for (i = 1; i <= m; i++)
{
fin >> x >> y;
a[x].push_back(y);
a[y].push_back(x);
}
for (i = 1; i <= n; i++)
if (viz[i] == 0)
{
Dfs(i);
sol++;
}
fout << sol << "\n";
return 0;
}