Cod sursa(job #1396601)

Utilizator robertstrecheStreche Robert robertstreche Data 22 martie 2015 19:05:59
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <fstream>
#include <bitset>
#include <vector>

#define lmax 100005

using namespace std;

ifstream f("dfs.in");
ofstream g("dfs.out");

vector <int>v[lmax];

int n,m,nr,x,y;

bitset <lmax>viz;

void dfs(int k)
{
    viz[k]=1;

    for (auto it:v[k])
     if (viz[it]==0)
      dfs(it);
}
int main()
{
    f>>n>>m;

    for (int i=1;i<=m;i++)
     {
         f>>x>>y;
         v[x].push_back(y);
         v[y].push_back(x);
     }
    for (int i=1;i<=n;i++)
     if (viz[i]==0)
      {
          dfs(i);
          nr++;
      }
      g<<nr;

   f.close();
   g.close();
}