Cod sursa(job #630298)

Utilizator unsilviuContvechidontdeactivatepls unsilviu Data 5 noiembrie 2011 10:20:50
Problema Arbore partial de cost minim Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include <fstream>
#include <algorithm>
using namespace std;
int o[101],x[101][3],cst[101],muc[101],nrmuc,mc;
bool srt(int i, int j) {return(cst[i]<cst[j]); }

int main() {
	int n,m,i,j,mn,mx;
	mx=-2000000000;
	mn=2000000000;
	FILE *f;
	f=fopen("apm.in","r");
	ofstream g("apm.out");
	fscanf(f,"%d%d",&n,&m);
	for (i=1; i<=m; i++) {
		fscanf(f,"%d%d%d",&x[i][1],&x[i][2],&cst[i]);
		o[i]=i;
	}
	sort(o+1,o+m+1,srt);
	mc=0;
	while (nrmuc<n-1) {
		mc++;		
		if  (x[o[mc]][1]!=x[o[mc]][2]) {
			nrmuc++;
			muc[nrmuc]=mc;
			mn=min(x[o[mc]][1],x[o[mc]][2]);
			mx=max(x[o[mc]][1],x[o[mc]][2]);
			for (i=1; i<=n; i++)
				if (o[i]==mx)
					o[i]=mn;
		}
	}
	g<<nrmuc;
	g.close();
	return 0;
}