Cod sursa(job #2434029)

Utilizator AlexBolfaAlex Bolfa AlexBolfa Data 30 iunie 2019 13:39:19
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <bits/stdc++.h>
#define MAX 100005
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");

int n,m,ans;
bool Used[MAX];
vector <int> Edge[MAX];

void read();
void dfs(int x);

int main(){
    read();
    for(int i=1;i<=n;++i){
        if(!Used[i]){
            ++ans;
            dfs(i);
        }
    }
    fout<<ans;
    return 0;
}
void read(){
    int i,x,y;
    fin>>n>>m;
    for(i=0;i<m;++i){
        fin>>x>>y;
        Edge[x].push_back(y);
        Edge[y].push_back(x);
    }
}
void dfs(int x){
    Used[x]=1;
    for(auto it:Edge[x]){
        if(!Used[it])
            dfs(it);
    }
}