Cod sursa(job #1181839)

Utilizator toncuvasileToncu Vasile toncuvasile Data 3 mai 2014 22:40:47
Problema Parcurgere DFS - componente conexe Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
//Arbore partial de cost minim. Algoritmul Kruskal.
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;

struct muchie{
	int x,y,cost;
};

int A[10005][10005];
int n,m;

void DFS(int i)
{
	for(int j=1;j<=n;j++){
		if(A[i][j]==1){
			A[i][j]=0;
			DFS(j);
		}
	}
}

int main()
{
	ifstream f("dfs.in");  //apm.in
	ofstream g("dfs.out");

	f >> n >> m;
	int x,y;
	for(int i=1;i<=m;i++){
		f >> x >> y;
		A[x][y]=A[y][x]=1;
	}


	int ct=0;
	for(int i=1;i<=n;i++){
		A[i][i]=1;
	}
	

	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			if(A[i][j]==1){
				ct++;
				DFS(i);
			}
		}
	}
	
	g << ct;
}