Cod sursa(job #2576816)

Utilizator valentin12Valentin Ion Semen valentin12 Data 6 martie 2020 23:18:33
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
#include <vector>
#define NLIM 100001

using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
vector < int > edge[NLIM];

int n,m,x,y,nr;
bool vizitat[NLIM];
void DFS(int nod)
{
vizitat[nod]=true;
for(unsigned int i=0;i<edge[nod].size();i++)
{
int next=edge[nod][i];

if(!vizitat[nod])
    DFS(next);

}
}

int main()
{nr=0;
 f>>m>>n;
 for(int i=1;i<=m;i++)
 {
  f>>x>>y;
  edge[x].push_back(y);
  edge[y].push_back(x);
 }

  for(int i=1;i<=n;i++)
  {
   if(!vizitat[i])
   {
    nr++;
    DFS(i);
   }
  }

  g<<nr;

    return 0;
}