Cod sursa(job #2524368)

Utilizator alex.prohnitchiAlex Prohnitchi alex.prohnitchi Data 15 ianuarie 2020 16:43:12
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <bits/stdc++.h>
using namespace std;

int N,M,X,Y,k,viz[100005];
vector<int>v[100007];

void dfs(int nod) {
	viz[nod]=1;
	for(int i=0; i<(int)v[nod].size(); i++) {
		if(!viz[v[nod][i]]) {
			dfs(v[nod][i]);
		}
	} 
} 

int main() {
	ifstream cin("dfs.in");
	ofstream cout("dfs.out");
	cin >> N >> M;
	
	for(int i=1;i<=M;i++){
		cin>>X>>Y;
		v[X].push_back(Y);
		v[Y].push_back(X);
	}
	
	for(int i=1; i<=N; i++) {
		if(viz[i]==0) {
			k++;
			dfs(i);
		}
	}
	cout << k;
}