Cod sursa(job #3368419)

Utilizator ArcopieBirghilescu Alexandru Arcopie Data 14 octombrie 2026 13:44:44
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include<bits/stdc++.h>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
const int nmax=100001;
int n,m;
int x,y;
vector<vector<int>> graph;
bitset<nmax>used;
int comp_conexe=0;
void dfs(int node)
{
    used[node]=1;
    for(int next:graph[node])
    {
        if(!used[next])
            dfs(next);
    }
}

int main()
{
fin>>n>>m;

graph.assign(n+1,vector<int>());

for(int i=1; i<=m;i++)
    {
    fin>>x>>y;
    graph[x].push_back(y);
    graph[y].push_back(x);
   }
  for(int i=1; i<=n;i++)
  {
   if(!used[i])
   {
        comp_conexe++;
        dfs(i);
   }
  }


fout<<comp_conexe;
return 0;
}