Cod sursa(job #2119214)

Utilizator prisacalexandruPrisac Alexandru prisacalexandru Data 31 ianuarie 2018 20:05:58
Problema Parcurgere DFS - componente conexe Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<bits/stdc++.h>

using namespace std;


int viz[1005];
int n,pl,m,x,y,u,k=0;
int a[1005][1005];


void dfs(int pl){
	int j;
	//cout<<pl<<" ";
	viz[pl]=1;
	for(j=1;j<=n;j++)
		if((a[pl][j]==1)&&(viz[j]==0))
			dfs(j);
}


int main(){
	ifstream cin("dfs.in");
	ofstream cout("dfs.out");
	cin>>n;
	cin>>m;
	for(int i=1;i<=m;i++){
		cin>>x>>y;
		a[x][y]=a[y][x]=1;
	}
	for (int i = 1; i <= n; i++) if (!viz[i]) { k++; dfs(i);}
	
	cout<<k;
	return 0;
}