Cod sursa(job #3122566)

Utilizator calin06calin mihaescu calin06 Data 19 aprilie 2023 16:50:12
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <bits/stdc++.h>

using namespace std;

int n,m,sol,m1,m2;
vector<vector<int>>adj(100010);
vector<bool>viz(100010,0);

void dfs(int nod)
{
    viz[nod] = 1;
    for(int i = 0; i < adj[nod].size(); i++)
    {
        if(viz[adj[nod][i]] == 0)
        {
            dfs(adj[nod][i]);
        }

    }

}
int main()
{
    ifstream cin("dfs.in");
    ofstream cout("dfs.out");
    cin>>n>>m;
    for(int i = 1; i <= m; i++)
    {
        cin>>m1>>m2;
        adj[m1].push_back(m2);
        adj[m2].push_back(m1);
    }

    for(int i = 1; i <= n; i++)
        if(viz[i] == 0)
        {
            dfs(i);
            sol++;
        }

    cout<<sol;
}