Cod sursa(job #146559)

Utilizator floflowfloflofloflofloflo floflow Data 1 martie 2008 21:32:59
Problema Parcurgere DFS - componente conexe Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include<fstream.h>

#define MAX 2000
   ifstream f("dfs.in");
   ofstream g("dfs.out");
 int a[MAX][MAX],viz[1005], cnt,i,j,n,m,x,y;; 
  void creare(); void afisare();  void DFS(int);
     int main(int nod)
  {   creare();  
     DFS(nod);
       afisare();
         return 0;
        } 
 void creare()
 { f>>n>>m;
   for(i=1;i<=n;i++)
      {f>>x>>y;
       a[x][y]=a[y][x]=1;   
      } 
} 
  void afisare()
  { for (i = 1; i <= n; i++) if (!viz[i]) { cnt++; DFS(i);}  
    g<<cnt; 
       }             
  void DFS(int nod)
  {   int i;  
    viz[nod] = 1;  
    for (i = 1; i <= n; i++) if (!viz[i] && a[nod][i]) DFS(i); 
        }