Pagini recente » Cod sursa (job #1459180) | Cod sursa (job #1649947) | Cod sursa (job #673215) | Cod sursa (job #2943165) | Cod sursa (job #1618413)
#include<iostream>
#include<fstream>
#define oo 100000000
using namespace std;
int n,st[50],x,y,c,lin,col,i,j,k,mini,a[50][50],suma=0,muchie=0,m,p[200001],w=0;
void citire()
{
ifstream fin("apm.in");
ofstream fout("apm.out");
fin>>n>>m;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
a[i][j]=oo;
while(fin>>x>>y>>c)
{
a[x][y]=c;
a[y][x]=c;
}
}
int main()
{
citire();
for(i=2;i<=n;i++)
st[i]=1;
for(k=1;k<=n-1;k++)
{
mini=oo;
for(i=1;i<=n;i++)
if(st[i])
if(mini>a[st[i]][i])
{
mini=a[st[i]][i];
j=i;
}
p[w+1]=st[j];
p[w+2]=j;
w=w+2;
suma=suma+a[j][st[j]];
muchie++;
for(i=1;i<=n;i++)
if(st[i] && a[i][st[i]]>a[i][j])
st[i]=j;
st[j]=0;
}
cout<<suma<<endl<<muchie<<endl;
i=1;
while(i<=w)
{cout<<p[i]<<" "<<p[i+1]<<endl;
i=i+2;}
return 0;
}