Cod sursa(job #672793)

Utilizator miadaradiciDaradici Mia miadaradici Data 3 februarie 2012 09:41:54
Problema Ubuntzei Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include<iostream>
#include<fstream>
using namespace std;
ifstream f ("ubuntzei.in");
ofstream g ("ubuntzei.out");
int sum,n,m,k,prieten[2000],np,ad[2002][2002],i,j,a,b,c,mi,s[2000],li,lf,t[2000],p[2000];
int main ()
{
	f>>n>>m;
	f>>k;
	for ( i=1; i<=k; i++ )
		f>>prieten[i];
	for ( i=1; i<=m; i++ )
		for ( j=1; j<=m; j++ )
		{
			f>>a>>b>>c;
			ad[a][b]=c;
			ad[b][a]=c;
		}
	np=1;
	s[np]=1;
	for ( k=1; k<n; k++ )
	{
		mi=32000;
		for ( i=1; i<=n; i++ )
			for ( j=1; j<=n; j++ )
				if ( ad[i][j]!=0 && ad[i][j]<mi && s[i]==1 && s[j]==0 )
				{
					mi=ad[i][j];
					li=i;
					lf=j;
				}
		s[lf]=1;
		t[lf]=li;
		p[lf]=ad[li][lf];
	}
	
	for ( i=1; i<=n; i++ )
		g<<t[i]<<" ";
	g<<'\n';
	for ( i=1; i<=n; i++ )
		g<<p[i]<<" ";
	for ( i=2; i<=n; i++ )
		sum=sum+ad[i][t[i]];
	g<<sum;
}