Pagini recente » Cod sursa (job #1030944) | Cod sursa (job #379) | Cod sursa (job #1384162) | Cod sursa (job #1895613) | Cod sursa (job #649951)
Cod sursa(job #649951)
#include<stdio.h>
FILE*f=fopen("dfs.in","r");
FILE*g=fopen("dfs.out","w");
int A[1006][1006],n,m,viz[1006],ne,x,y,i,nd;
void DFS(int nd){
int j;
viz[nd]=1;
for(j=1;j<=n;j++){
if(!viz[j] && A[nd][j]==1)
DFS(j);
}
}
int main (){
fscanf(f,"%d %d",&n,&m);
for(i=1;i<=m;i++){
fscanf(f,"%d %d",&x,&y);
A[x][y]=A[y][x]=1;
}
for(i=1;i<=n;i++)
if(!viz[i]){
ne++;
DFS(i);
}
fprintf(g,"%d",ne);
return 0;
}