Pagini recente » Cod sursa (job #2305972) | Cod sursa (job #403052) | Cod sursa (job #2072191) | Cod sursa (job #961472) | Cod sursa (job #2839155)
#include <fstream>
#include <vector>
#define NMAX 200002
using namespace std;
int n, m, a, b, cont, viz[NMAX];
vector<int> v[NMAX];
ifstream fin("dfs.in");
ofstream fout("dfs.out");
void DFS(int x){
for(int i=0; i<v[x].size(); i++){
int nod = v[x][i];
if(viz[nod] == 0){
viz[nod]=1;
DFS(nod);
}
}
}
int main(){
fin >> n >> m;
for(int i=1; i<=m; i++){
fin >> a >> b;
v[a].push_back(b);
v[b].push_back(a);
}
for(int i = 1; i <= n; i++){
if(viz[i] == 0){
cont++;
DFS(i);
}
}
fout << cont << '\n';
return 0;
}