Pagini recente » Cod sursa (job #1747356) | Cod sursa (job #3278020) | Cod sursa (job #1453913) | Cod sursa (job #1215393) | Cod sursa (job #1483769)
#include <fstream>
#include <vector>
int Nr=0;
int v[100000];
std::vector<int> g[100000];
void dfs(int i){
v[i] = 1;
for (auto d : g[i]){
if (!v[d]) dfs(d);
}
}
int main(){
std::ifstream f("dfs.in");
std::ofstream c("dfs.out");
int a, b,n;
f >> n >> a;
while (f >> a >> b) { g[a].push_back(b); g[b].push_back(a);}
for (int i = 0; i < n; ++i)
if (!v[i]){ Nr++; dfs(i); }
c << Nr << '\n';
}