Cod sursa(job #3302546)

Utilizator horatiu.avramAvram Popa Cristian Horatiu horatiu.avram Data 8 iulie 2025 17:47:22
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include<bits/stdc++.h>
using namespace std;
#define MAX_N (int)1e5
ifstream fin("dfs.in");
ofstream fout("dfs.out");
int vis[MAX_N+1];
vector<int>adj[MAX_N+1];
void dfs(int v) {
    vis[v]=1;
    for(auto u:adj[v]) {
        if(!vis[u]) {
            dfs(u);
        }
    }
}
int main() {
    int num_nodes,num_edges,num_components=0;
    fin>>num_nodes>>num_edges;
    while(num_edges--) {
        int u,v;
        fin>>u>>v;
        adj[u].push_back(v);
        adj[v].push_back(u);
    }
    for(int v=1; v<=num_nodes; v++) {
        if(!vis[v]) {
            dfs(v);
            num_components++;
        }
    }
    fout<<num_components;
    return 0;
}