Cod sursa(job #833897)

Utilizator chimistuFMI Stirb Andrei chimistu Data 13 decembrie 2012 11:43:27
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <stdio.h>
#include<fstream>
#include <stdlib.h>
#include <vector>
using namespace std;

int validare[120000];
vector <int>vec[120000];
int n,m;

void df(int nod){
	int i;
	validare[nod]++;
	for(i=0;i<vec[nod].size();i++){
		if(validare[vec[nod][i]]==0)
			df(vec[nod][i]);
	}
}
	

int main()
{
	ifstream f("dfs.in");
	ofstream g("dfs.out");
	int i,a,b,nr;
	f>>n>>m;
	for (i=1;i<=m;i++)
	{f>>a>>b;
		
		vec[a].push_back(b);
		vec[b].push_back(a);}
	nr=0;
	for(i=1;i<=n;i++)
		if (validare[i]==0){
			df(i);
			nr++;
		}
	g<<nr;
	f.close();
	g.close();
}