Pagini recente » Cod sursa (job #3244009) | Cod sursa (job #1295547) | Cod sursa (job #2471470) | Cod sursa (job #528431) | Cod sursa (job #3222458)
//
// Created by Laur on 4/10/2024.
//
#include <fstream>
#include <vector>
#include <iostream>
#define nmax 100005
using namespace std;
int n, m;
vector<int> graf[nmax];
vector<int> comp;
void dfs(int start, int nr) {
comp[start] = nr;
for(int x : graf[start]) {
if(!comp[x]) {
dfs(x, nr);
}
}
}
int main(){
// ifstream fin("E:\\UPB_ACS_CTI\\anul_2\\sem_2\\PA\\all_problems\\lab_7\\dfs\\dfs.in");
// ofstream fout("E:\\UPB_ACS_CTI\\anul_2\\sem_2\\PA\\all_problems\\lab_7\\dfs\\dfs.out");
ifstream fin("dfs.in");
ofstream fout("dfs.out");
fin >> n;
comp.assign(n + 1, 0);
fin >> m;
int u, v;
for(int i = 0; i < m; ++i) {
fin >> u >> v;
graf[u].push_back(v);
graf[v].push_back(u);
}
int nr = 0;
for(int i = 1; i <= n; ++i) {
if (!comp[i]) {
++nr;
dfs(i, nr);
}
}
fout << nr;
return 0;
}