1 条题解
-
0
思路
完全图对称距离矩阵,100节点;最小总连接长度,零权非对角边可用。
参考程序(C++11)
#include <bits/stdc++.h> using namespace std; int main(){int n;cin>>n;vector<vector<int>>a(n,vector<int>(n));for(auto &row:a)for(auto &x:row)cin>>x;vector<int>d(n,INT_MAX),used(n);d[0]=0;long long ans=0;for(int k=0;k<n;k++){int v=-1;for(int i=0;i<n;i++)if(!used[i]&&(v<0||d[i]<d[v]))v=i;ans+=d[v];used[v]=1;for(int j=0;j<n;j++)if(!used[j])d[j]=min(d[j],a[v][j]);}cout<<ans<<'\n';}
- 1