Cod sursa(job #2128398)

Utilizator TESTHARD123TEST CENTRE TESTHARD123 Data 11 februarie 2018 18:02:49
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include<bits/stdc++.h>
using namespace std;
//Ionitas code
#define shit ios_base::sync_with_stdio(0); fin.tie(0);
#define vi vector<int>
#define pb push_back
vi my[100005];
vector <bool> viz(100005,false);
inline void dfs(int nod){
	for (auto x: my[nod])
		if (!viz[x]) viz[x]= true,dfs(x);
}

int main(){
	ifstream fin("dfs.in");
	ofstream fout("dfs.out");shit	
	int n,m, count=0;fin>>n>>m;
	for(int i(1),x,y;i<=m;i++){
			fin>>x>>y;
			my[x].pb(y);
			my[y].pb(x);
}
for(int i(1);i<=n;i++){
	if(!viz[i]){
		viz[i]=true;
		count++;
		dfs(i);	
	}
}
	fout<<count;
	return 0;
}