Cod sursa(job #3256771)

Utilizator aeru1Ianos Alex-Marian aeru1 Data 16 noiembrie 2024 09:39:38
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;

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

bitset<100003>Visited;

void dfs(int Node, vector<vector<int>> &Graph)
{
    Visited[Node]=true;
    for(auto it : Graph[Node])
        if(!Visited[it])
        dfs(it,Graph);
}

int main()
{
    int n,m;
    f>>n>>m;
    vector<vector<int>> Graph(n+1);
    for(int a,b; f>>a>>b; Graph[a].emplace_back(b), Graph[b].emplace_back(a));
    int answer=0;
    for(int i=1; i<=n; i++)
        if(!Visited[i])
        {
            dfs(i,Graph);
            answer++;
        }
    g<<answer;
    return 0;
}