#include<iostream> #include<Cstring> using namespace std; int main(){ int n; while(cin>>n){ int a[n+5][n+5],f[n+2],ans=0; memset(f,0,sizeof(f)); for(int i=1;i<=n;++i) for(int m=1;m<=n;++m) cin>>a[i][m]; for(int i=1;i<n;++i){ int maxn=0x3f3f3f,x,flag=1; for(int m=1;m<=n;++m){ for(int j=m+1;j<=n;++j){ if(maxn>a[m][j]&&f[j]==0){ maxn=a[m][j]; if(flag){ flag=0; f[m]=1; } x=j; } } } f[x]=1; ans+=maxn; } cout<<ans<<endl; } } |
Double click to view unformatted code.