Pagini recente » Cod sursa (job #3367570) | Cod sursa (job #3367559) | Cod sursa (job #3367560) | Cod sursa (job #3367539) | Cod sursa (job #3367524)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
int n,m;
vector<vector<int>>adj;
vector<int>viz;
void DFS(int nod){
viz[nod]=1;
for(int i : adj[nod]){
if (viz[i] == 0)
DFS(i);
}
}
int main(){
int cnt=0;
fin>>n>>m;
adj.resize(n+5);///a must altfel eroare la compilare - trebuie definit un size
viz.resize(n+5);
for(int i =1 ; i<=m ; i++){
int x,y;
fin>>x>>y;
adj[x].push_back(y);
adj[y].push_back(x);
}
for (int i =1; i<=n; i++){
if (viz[i]==0){
DFS(i);
cnt++;
}
}
fout<<cnt;
return 0;
}