Cod sursa(job #150601)

Utilizator georgepalPal George Catalin georgepal Data 7 martie 2008 08:34:38
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include<fstream.h>
ifstream f("dfs.in");
ofstream g("dfs.out");
int a[3000][3000],viz[3000],m,n,ct;
void citire_graf()
	{
	int x,y,i;
	f>>n>>m;
	for(i=1;i<=n;i++)
		{f>>x>>y;
		a[x][y]=a[y][x]=1;
		}
	f.close();
	}
void DF(int v)
	{viz[v]=1;
	for(int i=1;i<=n;i++)
		if(a[v][i]==1 &&!viz[i])
				DF(i);
	}
int primul0()
	{
	for(int i=1;i<=n;i++)
		  if(!viz[i])
				return i;
	return 0;
	}
int main()
	{
	int v;
	citire_graf();
	do{
		v=primul0();
		if(v) 	{ct++;DF(v);
					}
		}
	while(v);
g<<ct;
return 0;}