Cod sursa(job #3123402)

Utilizator nicholas9onicaOnica Nicholas Andrei nicholas9onica Data 23 aprilie 2023 15:25:08
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <vector>
#include<fstream>

using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
vector<vector<int>> graph;
bool visited[100001];
int dfs(int nod)
{
    visited[nod]=1;
    for(int i=0;i<graph[nod].size();i++)
    {
        if(visited[graph[nod][i]]==0)
            dfs(graph[nod][i]);
    }
}
int main()
{
    int n,m,m1,m2;
    fin>>n>>m;
    graph.resize(n+1);
    for(int i=1;i<=m;i++)
    {
        fin>>m1>>m2;
        graph[m1].push_back(m2);
        graph[m2].push_back(m1);
    }
    int nr=0;
    for(int i=1;i<=n;i++)
    {
        if(visited[i]==0)
        {
            dfs(i);
            nr++;
        }
    }
    fout<<nr;
}