Cod sursa(job #1650942)

Utilizator ioan.veveraIoan Vevera ioan.vevera Data 11 martie 2016 22:00:15
Problema Parcurgere DFS - componente conexe Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include <fstream>

using namespace std;
ifstream fin ("dfs.in");
ofstream fout ("dfs.out");
int m,n,viz[44000],nr,x,y;
char a[44000][44000];
void DFS(int i)
{
    viz[i]=1;
    for(int k=1;k<=n;k++)
        if(!viz[k]&&a[i][k]=='1') DFS(k);
}
int main()
{
    fin>>n>>m;
    for(int i=1;i<=m;i++) {fin>>x>>y;a[x][y]=a[y][x]='1';}
    for(int i=1;i<=n;i++)
    if(!viz[i]) {DFS(i);nr++;}
    fout<<nr;
    return 0;
}