Pagini recente » Cod sursa (job #1188855) | Cod sursa (job #103122) | Cod sursa (job #2667908) | Cod sursa (job #619377) | Cod sursa (job #1483767)
#include <fstream>
#include <vector>
int Nr=0;
int v[100000];
std::vector<int> g[100000];
void dfs(int i){
v[i] = 1;
for (auto i : g[i]){
if (!v[i]) dfs(i);
}
}
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';
}