Cod sursa(job #2355973)

Utilizator Bianca00Buzoi Bianca Bianca00 Data 26 februarie 2019 13:42:00
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <vector>
#include <fstream>

using namespace std;

int viz[100005];
vector <int> graph[100005];
void DFS(int node)
{
    viz[node]=1;
    int lim=graph[node].size();
    for(int j=0; j<lim; j++)
    {
        int vecin=graph[node][j];
        if(viz[vecin]==0)
            DFS(vecin);
    }


}
int main()
{   ifstream f("dfs.in");
ofstream g("dfs.out");
    int n,m;
    int ans=0,a,b;
    f>>n>>m;
    for(int i=1; i<=m; i++)
    {
        f>>a>>b;
        graph[a].push_back(b);
        graph[b].push_back(a);
    }
    for (int i=1; i<=n; i++)
    {
        if (viz[i]==0)
        {
            ans++;
            DFS(i);
        }
    }
    g<<ans;

}