Cod sursa(job #616639)

Utilizator Cristina94Cristina Ungurean Cristina94 Data 12 octombrie 2011 23:36:21
Problema Parcurgere DFS - componente conexe Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include<stdio.h>
int a[1005][1005], viz[1005], m, n, x, y, 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, j;
	scanf("%d %d" , &n, &m);
	
	for(i=1; i<=n; i++)
	{
		scanf("%d", &x);
		scanf("%d", &y);
		a[x][y]=1;
		a[y][x]=1;
	}
	
	for(i=1;i<=n;i++)
		if(viz[i]==0)
		{
			nr++;
			dfs(i);
		}
	printf("%d\n", nr);
	return 0;
}