Cod sursa(job #2162508)

Utilizator libaliv26Petre Livia libaliv26 Data 12 martie 2018 11:37:51
Problema Parcurgere DFS - componente conexe Scor 25
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <iostream>
#include <fstream>
#define max 10000
using namespace std;

ifstream f("dfs.in");
ofstream g("dfs.out");

int n, m, a[max][max], z, t[max], k=0;

void citire()
    {int x, y;
    f>>n>>m;
    for(int i=1;i<=m;i++)
        {f>>x>>y;
        a[x][y]=1;
        a[y][x]=1;}
    for(int i=1;i<=n;i++)
       t[i]=0;
    }

void dfs(int z)
    {for(int i=1;i<=n;i++)
        if(a[z][i]==1 && t[i]==0)
            {t[i]=1;
            dfs(i);}
    }

int main()
{citire();
for(int i=1;i<=n;i++)
    if(t[i]==0)
        {k++;
        dfs(i);}
 g<<k;
}