Cod sursa(job #642465)

Utilizator cippyApetrei Ciprian cippy Data 1 decembrie 2011 14:16:35
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
typedef struct nod* lst; struct nod {int nd; lst next;};
vector<int>vecini[100];
int viz[100];
int m,n,nod;
void citire(){
	int a,b;
	f>>n>>m;
	for(int i=1;i<=m;i++){
		f>>a>>b;
		vecini[a].push_back(b);
		vecini[b].push_back(a);
	}
}

void df(int x){
	viz[x]=1;
	for(int i=0;i<vecini[nod].size();i++) 
		if(!viz[x]) df(i);
}

int main(){
	int nr=0;
	f>>nod;
	citire();
	for(int i=1;i<=n;i++)
		if(!viz[i]) nr++,df(i);
	g<<nr;
	return 0;
}