Cod sursa(job #2111512)

Utilizator marcogoldPop Mihali Marco Silviu marcogold Data 22 ianuarie 2018 11:17:20
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

ofstream fo("dfs.out");
ifstream fi("dfs.in");

bool vazut[100010];

int n,m,a,b,suma;

 vector <int> vecini[100010];

void parcurgere(int nod)
{
    vazut[nod]=true;

    for(auto i:vecini[nod])
    {
        if(!vazut[i])
        {
            parcurgere(i);
        }
    }

}


int main()
{

   fi>>n>>m;

   for(int i=1;i<=m;i++)
   {
       fi>>a>>b;
       vecini[a].push_back(b);
       vecini[b].push_back(a);
   }


   for(int i=1;i<=n;i++)
   {
       if(!vazut[i])
        {suma++;
        parcurgere(i);
        }
   }

   fo<<suma;
    return 0;
}