#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main(){
// freopen("1.txt","r",stdin);
int maps[110][110],vis[110]={0},dis[110],n,minn,x,y,ans,k;
while(cin>>n&&n){
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
cin>>maps[i][j];
memset(dis,0x3f3f3f3f,sizeof(dis));
memset(vis,0,sizeof(vis));
dis[1]=ans=0;
for(int i=1;i<=n;i++){
minn=0x3f3f3f3f;
for(int j=1;j<=n;j++)
if(!vis[j]&&dis[j]<minn){
minn=dis[j];
k=j;
}
vis[k]=1;
ans+=minn;
for(int j=1;j<=n;j++)
if(!vis[j]&&maps[k][j]<dis[j])
dis[j]=maps[k][j];
}
cout<<ans<<endl;
}
}