Cod sursa(job #2819877)

Utilizator claudiu.draghitadraghita claudiu claudiu.draghita Data 19 decembrie 2021 12:32:59
Problema Parcurgere DFS - componente conexe Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <fstream>
#include <vector>
#define lim 200000
using namespace std;
ifstream in("dfs.in");
ofstream out("dfs.out");
int nod,muchii;
vector <int> m[lim];
int viz[102];
unsigned int ins;
void dfs(int n){
    viz[n] = true;
    for(unsigned int i = 0; i < m[n].size(); ++i)
    {
        int vecin = m[n][i];
        if(viz[vecin] == false)
        {
            dfs(vecin);
        }
    }
}
int main(){
    in >> nod >> muchii;
    for (int i = 1; i <= muchii; ++i) {
        int x, y;
        in >> x >> y;
        m[x].push_back(y);
        m[y].push_back(x);
    }
    for(int i = 1; i <= nod; i++)
    {
        if(viz[i] == false) {
            ins++;
            dfs(i);
        }
    }
    out << ins << "\n";

}