Cod sursa(job #798053)

Utilizator suzanicaSuzanica Mihu suzanica Data 15 octombrie 2012 17:28:29
Problema Parcurgere DFS - componente conexe Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <fstream>
#include<vector>
#define nmax 10002
using namespace std;
int G[nmax][nmax];
bool use[nmax];
int n,m,s;
void DFS(int nod)
{
    int i;
    use[nod]=1;
    for(i=1;i<=n;i++)
    {
        if(!use[i]&&G[nod][i]==1)
            DFS(i);
    }
}
int main()
{
    int i,x,y;
    ifstream f("dfs.in");
    ofstream g("dfs.out");
   f>>n>>m;

    for(i=1;i<=m;i++)
    {



        f>>x>>y;
        G[x][y]=G[y][x]=1;
    }

    for(i=1;i<=n;i++)
    {
        if(!use[i])
        {
            DFS(i);
            s++;
        }
    }
    g<<s;

    return 0;
}