Cod sursa(job #356080)

Utilizator butabuta radu gabriel buta Data 13 octombrie 2009 14:22:22
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
 
#include<iostream>
#include<fstream>
using namespace std;

int n, a[40][40], vizitat[40],i,j;

 
void df(int j)
{
     vizitat[j]=1;
     for(i=1;i<=n;i++)
        if(vizitat[i]==0&&a[i][j]==1)
            df(i);
}


int main()
{
     ofstream g("dfs.out");
      ifstream f("dfs.in");
         f>>n;
         for(i=1;i<=n;i++)
           for(j=1;j<=n;j++)
             f>>a[i][j];
     f.close();
     
    
   
   
    int ok=1,k=0; 
    
     while(ok)
     {
       ok=0;
       k++;  
       for(i=1;i<=n;i++) 
          if(vizitat[i]==0)
            {
              ok=1;
              df(i); 
            }
       }   
   g<<k;
   
g.close();
return 0;
}