Cod sursa(job #616641)

Utilizator Cristina94Cristina Ungurean Cristina94 Data 12 octombrie 2011 23:49:51
Problema Parcurgere DFS - componente conexe Scor 25
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include<stdio.h>
int a[1005][1005], viz[1005], m, n, nr;

void dfs(int k)
{
	int i;
	viz[k]=1;
	for(i=1;i<=n;i++)
		if(a[k][i]==1 && viz[i]==0)
			dfs(i);
}
int main()
{
	freopen("dfs.in", "r", stdin);
	freopen("dfs.out", "w", stdout);
	int i, x, y;
	scanf("%d %d" , &n, &m);
	
	for(i=1; i<=n; i++)
	{
		scanf("%d %d", &x, &y);
		a[x][y]=a[y][x]=1;
	}
	
	for(i=1;i<=n;i++)
		if(viz[i]==0)
		{
			nr++;
			dfs(i);
		}
	printf("%d", nr);
	return 0;
}