Cod sursa(job #551616)

Utilizator dragoostoicadragos stoica dragoostoica Data 10 martie 2011 21:48:08
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
/* Se citeste un graf (n,m, (x,y))
Se citeste un nod start, sa se afiseze toate nodurile accesibile din nodul de start
*/

#include<stdio.h>
#define NMAX 51
bool a[NMAX][NMAX], viz[NMAX];
int n,m;
void dfs (int nod)
{
	int i;
	
	viz[nod]=1;
	for (i=1;i<=n;i++)
		if (a[nod][i]==1 && viz[i]==0)
			dfs(i);
}
int main()
{
	int i,x,y,start;
		
		freopen("dfs.in","r",stdin);
		freopen("dfs.out","w",stdout);
			scanf("%d%d%d",&n,&m,&start);
				for (i=1;i<=m;i++)
				{
					scanf("%d%d",&x,&y);
					a[x][y]=a[y][x]=1;
				}
		dfs(start);
				for (i=1;i<=n;i++)
					if (viz[i])
						printf("%d ",i);
	return 0;
}