Cod sursa(job #1914309)

Utilizator CroitorGCroitor Gheorghita CroitorG Data 8 martie 2017 16:25:42
Problema Parcurgere DFS - componente conexe Scor 5
Compilator cpp Status done
Runda Arhiva educationala Marime 0.74 kb
#include <fstream>

using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
int n,m,i,nr;
int viz[100];
struct nod{
  int info;
  nod *urm;
  };

 nod *G[100];
  void add(nod *&loc,int y)
  {
     nod *p=new nod;
     p->info=y;
     p->urm=loc;
     loc=p;
  }

  void DF(int i)
  {  nod *p;
      viz[i]=1;
      for(p=G[i];p!=NULL;p=p->urm)
        if(!viz[p->info])
        DF(p->info);
  }

int main()
{ int i,j,x,y;
    f>>n>>m;
   /* for(i=1;i<=n;i++)
    {
        G[i]=new nod;
        G[i]->urm=0;
    }*/

    for(i=1;i<=m;i++)
    { f>>x>>y;
       add(G[x],y);
       add(G[y],x);
    }

   for(i=1;i<=n;i++)
    if(!viz[i])
   { nr++;
     DF(i);
   }
   g<<nr;
    return 0;
}