Cod sursa(job #3368762)

Utilizator ilystefalexVaduva Stefan-Alexandru ilystefalex Data 15 octombrie 2026 17:13:13
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

bool viz[100005];
vector<int> vec[100005];
void dfs(int nod,vector<int> vecin[] ) {
    viz[nod]=true;
    for ( int vec: vecin[nod]) {
        if(!viz[vec]) {
            dfs(vec,vecin);
        }
    }
}

int main() {
    int conex=0;
    ifstream fin("dfs.in");
    ofstream fout("dfs.out");

    int n,m;
    fin>>n>>m;


   for (int i=0;i<m;i++) {
       int nod,vecin;
       fin>>nod>>vecin;
       vec[vecin].push_back(nod);
       vec[nod].push_back(vecin);
   }

    for (int i=1;i<=n;i++) {
        if (!viz[i]) {
            conex++;

                dfs(i,vec);

        }
    }
    fout << conex<<"\n";




}