Cod sursa(job #152818)

Utilizator SofinetiSofineti Mihai Sofineti Data 9 martie 2008 20:09:51
Problema Parcurgere DFS - componente conexe Scor 45
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include<stdio.h>
int a[1000][1000],viz[1000],n,m,k;
void citire(){
       int x,y;
       scanf("%ld %ld",&n,&m);
       for(int i=1;i<=m;i++)
	  {
	  scanf("%ld %ld",&x,&y);
	  a[x][y]=1;
	  a[y][x]=1;
	  }
       }
void dfs(int nod){
	viz[nod]=1;
	for(int i=1;i<=n;i++) if(viz[i]!=1 && a[nod][i]!=0) dfs(i);
	}
int main()
{
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);

citire();

for(int i=1;i<=n;i++) if(viz[i]!=1){dfs(i);k++;}

printf("%ld",k);
return 0;
}