Cod sursa(job #3252813)

Utilizator LORDENVraja Luca LORDEN Data 31 octombrie 2024 11:38:16
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>
#include <vector>
#include <climits>

using namespace std ;

ifstream cin ("dfs.in") ;
ofstream cout ("dfs.out") ;

int n, m, ans ;
vector < int > v[100005] ;
bool visited[100005] ;

void dfs (int node)
{

    visited[node] = true ;

    for (auto item : v[node])
        if (!visited[item])
            dfs (item) ;

}

int main()
{

    int x, y ;

    cin >> n >> m ;

    for (int i = 1 ; i <= m ; i ++)
        cin >> x >> y, v[x].push_back (y), v[y].push_back (x) ;

    for (int i = 1 ; i <= n ; i ++)
    {

        if (!visited[i])
            dfs (i), ans ++ ;

    }

    cout << ans ;

    return 0 ;

}