Cod sursa(job #2967186)

Utilizator raileanu-alin-gabrielRaileanu Alin-Gabriel raileanu-alin-gabriel Data 19 ianuarie 2023 10:31:09
Problema Parcurgere DFS - componente conexe Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include <fstream>
#include <vector>
#include <algorithm>
const int NMAX=105;

using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");

vector <int> v[NMAX], ans[NMAX];
int n, m, s, nrc;
bool viz[NMAX];

void dfs(int);

int main()
{
    int i, a, b;
    fin>>n>>m;
    while(m--)
    {
        fin>>a>>b;
        v[a].push_back(b);
        v[b].push_back(a);
    }
    for(i=1; i<=n; i++)
    {
        if(!viz[i])
        {
            nrc++;
            dfs(i);
        }
    }
    fout<<nrc<<'\n';
    return 0;
}

void dfs(int nod)
{
    ans[nrc].push_back(nod);
    viz[nod]=true;
    for(auto i:v[nod])
    {
        if(!viz[i]) dfs(i);
    }
}