#include<iostream>
using namespace std;
int a,b,u,v,n,i,j,ne=1;
int visited[10]={0},mini,mincost=0,cost[10][10];
int main()
{
cout<<"\n Enter the number of nodes:";
cin>>n;
cout<<"\n Enter the adjacency matrix:\n";
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
cin>>cost[i][j];
if(cost[i][j]==0)
cost[i][j]=999;
}
visited[1]=1;
cout<<endl;
while(ne<n)
{
for(i=1,mini=999;i<=n;i++)
for(j=1;j<=n;j++)
if(cost[i][j]<mini)
if(visited[i]!=0)
{
mini=cost[i][j];
a=u=i;
b=v=j;
}
if(visited[u]==0 || visited[v]==0)
{
cout<<"\n Edge "<<ne++<<":( "<<a<<" "<<b<<") cost:"<<mini;
mincost+=mini;
visited[b]=1;
}
cost[a][b]=cost[b][a]=999;
}
cout<<"\n Minimun cost= "<<mincost;
cout<<endl;
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBhLGIsdSx2LG4saSxqLG5lPTE7CmludCB2aXNpdGVkWzEwXT17MH0sbWluaSxtaW5jb3N0PTAsY29zdFsxMF1bMTBdOwppbnQgbWFpbigpCnsKCiBjb3V0PDwiXG4gRW50ZXIgdGhlIG51bWJlciBvZiBub2RlczoiOwogY2luPj5uOwogY291dDw8IlxuIEVudGVyIHRoZSBhZGphY2VuY3kgbWF0cml4OlxuIjsKIGZvcihpPTE7aTw9bjtpKyspCiAgZm9yKGo9MTtqPD1uO2orKykKICB7CiAgIGNpbj4+Y29zdFtpXVtqXTsKICAgaWYoY29zdFtpXVtqXT09MCkKICAgIGNvc3RbaV1bal09OTk5OwogIH0KIHZpc2l0ZWRbMV09MTsKIGNvdXQ8PGVuZGw7CiB3aGlsZShuZTxuKQogewogIGZvcihpPTEsbWluaT05OTk7aTw9bjtpKyspCiAgIGZvcihqPTE7ajw9bjtqKyspCiAgICBpZihjb3N0W2ldW2pdPG1pbmkpCiAgICAgaWYodmlzaXRlZFtpXSE9MCkKICAgICB7CiAgICAgIG1pbmk9Y29zdFtpXVtqXTsKICAgICAgYT11PWk7CiAgICAgIGI9dj1qOwogICAgIH0KICBpZih2aXNpdGVkW3VdPT0wIHx8IHZpc2l0ZWRbdl09PTApCiAgewogICBjb3V0PDwiXG4gRWRnZSAiPDxuZSsrPDwiOiggIjw8YTw8IiAiPDxiPDwiKSBjb3N0OiI8PG1pbmk7CiAgIG1pbmNvc3QrPW1pbmk7CiAgIHZpc2l0ZWRbYl09MTsKICB9CiAgY29zdFthXVtiXT1jb3N0W2JdW2FdPTk5OTsKIH0KIGNvdXQ8PCJcbiBNaW5pbXVuIGNvc3Q9ICI8PG1pbmNvc3Q7CiBjb3V0PDxlbmRsOwogcmV0dXJuIDA7Cn0=