Cod sursa(job #3335228)

Utilizator D4R1U5Sava Darius D4R1U5 Data 21 ianuarie 2026 23:44:20
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("dfs.in");
ofstream g("dfs.out");

const int NMAX = 100005;

vector <int> G[NMAX];

int n,m;
bool viz[NMAX];
int nrc;

void DFS(int start){
    viz[start]=true;
    for (auto vecin : G[start]){
        if (viz[vecin]==false)
            DFS(vecin);
    }
}

int main(){
    f>>n>>m;
    for (int i=1;i<=m;i++){
        int nod1, nod2;
        f>>nod1>>nod2;
        G[nod1].push_back(nod2);
        G[nod2].push_back(nod1);
    }

    for (int i=1;i<=n;i++){
        if (viz[i]==false){
            nrc++;
            DFS(i);
        }
    }

    g<<nrc;
}