Cod sursa(job #2970452)

Utilizator _Fibonacci_Caitaz _Fibonacci_ Data 25 ianuarie 2023 10:25:57
Problema Parcurgere DFS - componente conexe Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
const int  max_size=1e5+1;
int n,x,y,k,o;
long long m,i,j;
vector <long long> graf[max_size];
bool vizitat[max_size];

void dfs(int nod)
{
	vizitat[nod]=true;
	int noduri = graf[nod].size();
	for (i=0;i<noduri;i++)
	{
		o=graf[nod][i];
		if (vizitat[o]==false)dfs(o);
	}
}

 int main()
 {
	fin >> n >> m ;
	for (i=1;i<=m;i++)
	{
		fin >> x >> y ;
		graf[x].push_back(y);
		graf[y].push_back(x);
	}
	for (j=1;j<=n;j++)
	{
		if (vizitat[j]==false){
			k++;
			dfs(j);
		}
	}
	fout << k << "\n";
 	return 0;
}