Pagini recente » Cod sursa (job #2014408) | Cod sursa (job #70966) | Cod sursa (job #155024) | Cod sursa (job #1618079) | Cod sursa (job #3199044)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
bool viz[100005];
vector<vector<int>>graf;
void DFS(int nod){
viz[nod]=true;
for(int vec:graf[nod]){
if(!viz[vec]){
DFS(vec);
}
}
}
int main()
{ int n, m;
fin>>n>>m;
graf.resize(n+1);
for(int i=0; i<m; i++){
int nod1, nod2;
fin>>nod1>>nod2;
graf[nod1].push_back(nod2);
graf[nod2].push_back(nod1);
}
int cnt=0;
for(int i=1; i<=n; i++){
if(!viz[i]){
DFS(i);
cnt++;
}
}
fout<<cnt;
return 0;
}