Cod sursa(job #2415754)

Utilizator KRAKEN01Sergiu Adrian KRAKEN01 Data 26 aprilie 2019 14:49:14
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.93 kb
#include <vector>
//#include <iostream>
#include <algorithm>
#include <queue>
#include <map>
#include <set>
#include <unordered_map>
#include <time.h>
#include <iomanip>
#include <deque>
#include <math.h>
#include <cmath>
#include <assert.h>
#include <stack>
#include <bitset>
#include <random>
#include <chrono>
#include <fstream>
using namespace std;





ifstream cin ("bfs.in");
ofstream cout ("bfs.out");

vector <int> v[100100];
bool vizitat[100100];
const int K=100100;

void dfs(int s){
vizitat[s]=true;
for(int i=0;i<v[s].size();i++)
if(vizitat[v[s][i]]==false)
    dfs(v[s][i]);
}


void init(){
for(int i=0;i<K;i++)
vizitat[i]=false;}


int main(){
int noduri,muchii,x,y,cont;
for(int i=0;i<muchii;i++){
cin>>x>>y;
v[x].push_back(y);
v[y].push_back(x);}
init();
for(int i=1;i<=noduri;i++){
    if(vizitat[i]==false){
        dfs(i);
        cont++;
    }
}
cout<<cont;
return 0;}