Cod sursa(job #633856)

Utilizator sternvladStern Vlad sternvlad Data 14 noiembrie 2011 22:41:07
Problema Parcurgere DFS - componente conexe Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <cstdlib>
#include <iostream>
#include <vector>
#include <fstream>

using namespace std;

vector <int> g[100002];
int viz [100002],n,m;

void citire()
{
     ifstream f ("dfs.in");
     f>>n>>m;
     int i,x,y;
     for (i=1;i<=m;i++)
     {
         f>>x>>y;
         g[x].push_back(y);
         g[y].push_back(x);
         }
}
void dfs (int x)
{int i;
viz [x]=1;
for (i=1;i<=g[x].size();i++)
    if (viz [g[x][i]]==0)
       dfs (g[x][i]);
       }
int main()
{int i,nr=0;
citire ();
       for (i=1;i<=n;i++);
       if (viz [i]==0)
       {
               dfs (i);
               nr++;
               }
               ofstream g ("dfs.out");
               g<<nr;
               return 0;
}