Cod sursa(job #2382397)

Utilizator The_one_and_onlyMironica Vasile The_one_and_only Data 18 martie 2019 11:55:30
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <fstream>
#include <vector>
using namespace std;
 
ifstream cin("dfs.in");
ofstream cout("dfs.out");
 
int n, m, k;
vector<int> a[100010];
bool viz[100010];
 
void dfs(int nod) {
	viz[nod] = 1;
	for(int i=0; i<a[nod].size(); i++)
		if(!viz[a[nod][i]])
			dfs(a[nod][i]);
}
 
int main() {
	cin >> n >> m;
	while(m--) {
		int x, y;
		cin >> x >> y;
		a[x].push_back(y);
		a[y].push_back(x);  
	}
	for(int i=1; i<=n; i++)
		if(!viz[i])
			k++, dfs(i);
	cout << k;
	return 0;
}