Cod sursa(job #2144152)

Utilizator RaduNRadu Negovan RaduN Data 26 februarie 2018 16:07:12
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
vector <int> gr;
bool a[100001];
void dfs(int u) {
    a[u]=true;
    int i;
    for(i=0; i<gr[u].size(); i++) {
        if(!a[gr[u][i]]) {
            dfs(gr[u][i]);
        }
    }
}
int main() {
    int n, m, cont=0;
    f>>n>>m;
    for (int i=1; i<=m; i++) {
        int a, b;
        cin>>a>>b;
        g[a].pushback(b);
        g[b].pushback(a);
    }
    for (int i=1; i<=n; i++) {
        dfs(i);
        cont++;
        if (!a[i]) {
            dfs(i);
            cont++;
        }
    }
    g<<cont;
    return 0;
}