Cod sursa(job #560003)

Utilizator swxxIoo Andrei Rares swxx Data 18 martie 2011 11:45:49
Problema Parcurgere DFS - componente conexe Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include <fstream>
using namespace std;

int a[10001][10001],n, vizitat[10001],m,nrc;
void citire()
{long x,y,i,j;
     ifstream f("dfs.in");
f>>n>>m;
for(i=1;i<=m;i++)
{
                 f>>x>>y;
                 
                 a[x][y]=a[y][x]=1;
                 }
f.close();
     
     
     }
     
void dfs (int j)
{ long i;
     vizitat[j]=1;
for (i=1;i<=n;i++)
 if (vizitat[i]==0 &&a[i][j]==1 )
      dfs (i);
      
      

  
     
     
     
     }
     
     
int main()

{long i;
    nrc=0;
        citire();
    
    for(i=1;i<=n;i++)
      if (vizitat[i]==0) {nrc++; dfs(i);}
        
        ofstream g("dfs.out");
        g<<nrc;
        g.close();
    return 0;
}