Cod sursa(job #837739)

Utilizator BalcauIonutFMI-Balcau Ionut BalcauIonut Data 18 decembrie 2012 16:47:14
Problema Parcurgere DFS - componente conexe Scor 5
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<fstream>
#include<vector>

using namespace std;

vector<int> v[100001];
bool ok[100001];
int count=0;

void dfs(int x){
	ok[x]=true;
	vector<int>::iterator it;
	for(it=v[x].begin();it!=v[x].end();++it)
		dfs(*it);
	return;
}


int main(){
ifstream fin("dfs.in");
ofstream fout("dfs.out");
int n,m,x,y,i;
fin>>n>>m;

for(i=1;i<=m;++i){
	fin>>x>>y;
	v[x].push_back(y);
}

for(i=1;i<=n;++i)
	if(!ok[i]){
		count++;
		dfs(i);
	}

fout<<count;

}