Pagini recente » Istoria paginii runda/road-to-sepi-1. | Cod sursa (job #733040) | Istoria paginii runda/asd123 | Monitorul de evaluare | Cod sursa (job #2009447)
#include <fstream>
#include <vector>
using namespace std;
vector <int> v[100005];
bool viz[100005];
int solutie;
void DFS (int x) {
viz[x] = 1;
vector <int> :: iterator it;
for (it = v[x].begin(); it != v[x].end(); ++it) {
if (!viz[*it]) DFS(*it);
}
}
int main()
{
ifstream f("dfs.in");
ofstream g("dfs.out");
int n, m, x;
f >> n >> m;
for (int i = 1; i <= m; ++i) {
int a, b;
f >> a >> b;
v[a].push_back(b);
v[b].push_back(a);
}
DFS(x);
vector <int> :: iterator it;
for (int i = 1; i <= n; ++i)
if (!viz[i]) DFS(i), ++solutie;
g << solutie << "\n";
return 0;
}