Cod sursa(job #2667698)

Utilizator zaBogdanZavadovschi Bogdan zaBogdan Data 3 noiembrie 2020 19:11:50
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <bits/stdc++.h>
#include <iostream>
using namespace std;
const int maxNr = 100005;
bool viz[maxNr];
vector<int> v[maxNr];

void dfs(int nod){
	viz[nod]=1;
	for(auto it: v[nod])
		if(!viz[it])
			dfs(it);
}

int main(){
	int n,m;
	ifstream f("dfs.in");
	cin >> n >>m;
	for(int i=0;i<m;i++){
		int x,y;
		cin >> x >> y;
		v[x].push_back(y);
		v[y].push_back(x);
	}
	f.close();
	int nrCompConexe=0;
	for(int i=1;i<=n;i++){
		if(!viz[i]){
			nrCompConexe++;
			dfs(i);
			i--;
		}
	}
	cout << nrCompConexe;
	ofstream g("dfs.out");
	g << nrCompConexe;
	g.close();
    //linux output debug.
    cout << '\n';
    return 0;
}