Cod sursa(job #2925557)

Utilizator Medianski[email protected] Medianski Data 15 octombrie 2022 17:53:03
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
//#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

ifstream cin("dfs.in");
ofstream cout("dfs.out");

int vizitat[100000];
vector<vector<int>> adiacenta(100001);

int n, m;

void dfs(int k) {
	vizitat[k] = 1;
	for(int i = 1;i<=n;i++) {
		if(adiacenta[k][i] == 1 && vizitat[i] == 0) {
			dfs(i);
		}
	}
}


int main() {

	cin >> n >> m;

	for(int i = 1;i<=m;i++) {
		int x, y;
		cin >> x >> y;
		adiacenta[x].push_back(y);
		adiacenta[y].push_back(x);
	}

	int rez = 0;
	for(int i = 1;i<=m;i++) {
		if(vizitat[i] == 0) {
			rez++;
			dfs(i);
		}
	}
	cout << rez << endl;
}