Cod sursa(job #1007861)

Utilizator RRomaniucRomaniuc Radu Andrei RRomaniuc Data 9 octombrie 2013 20:19:59
Problema Parcurgere DFS - componente conexe Scor 45
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
//MEMORIE: 16MB //TIMP EXECUTIE TEST: 2 MS
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
int a[1000][1000],viz[100000]; int n,m; int x,y; int cnt;
void DFS(int i)
{
    viz[i]=1;
    int j;
    for(j=1;j<=n;j++)
        if(j!=i)if(a[i][j]==1)if(viz[j]==0)DFS(j);
}
int main()
{
    f>>n>>m; int i;
    while(m!=0){f>>x>>y;a[x][y]=a[y][x]=1;m--;}
    for(i=1;i<=n;i++)if(viz[i]==0){cnt++;DFS(i);}

    g<<cnt; return 0;
}