Pagini recente » Cod sursa (job #856838) | Cod sursa (job #436567) | Cod sursa (job #2469482) | Cod sursa (job #186589) | Cod sursa (job #2667246)
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
int n, m, vizitat[100001], nr;
vector<int> muchie_din[100001];
void citire() {
f>>n>>m;
int a, b;
for(int i=0; i<m; i++) {
f>>a>>b;
muchie_din[a].push_back(b);
muchie_din[b].push_back(a);
}
}
void dfs(int i) {
vizitat[i] = 1;
for(int j : muchie_din[i])
if(vizitat[j] == 0)
dfs(j);
}
int main() {
citire();
f.close();
for(int i=1; i<=n; i++)
if(vizitat[i] == 0) {
dfs(i);
nr++;
}
g<<nr;
g.close();
}