Pagini recente » Cod sursa (job #574734) | Cod sursa (job #1334946) | Cod sursa (job #1982443) | Cod sursa (job #1247843) | Cod sursa (job #1993624)
/*
* dfs.cpp
*
* Created on: Jun 23, 2017
* Author: andreir
*/
#include <fstream>
#include <vector>
using namespace std;
ifstream in("dfs.in");
ofstream out("dfs.out");
bool Vizitat[100005];
int N, M;
vector<int> D[100005];
void Read() {
int x, y;
in >> N >> M;
for (int i = 1; i <= M; i++) {
in >> x >> y;
D[x].push_back(y);
D[y].push_back(x);
}
}
void dfs(int nod) {
int vecin;
Vizitat[nod] = 1;
for (int i = 0; i < (int) D[nod].size(); i++){
vecin = D[nod][i];
if (Vizitat[vecin] == 0)
dfs(vecin);
}
}
int main() {
int k = 0;
Read();
for (int i = 1; i <= N; i++) {
if (Vizitat[i] == 0) {
dfs(i);
k++;
}
}
out << k;
return 0;
}