#include <stdio.h>
#define INF 100000000

int MIN(int p,int q) {return p<q?p:q;}
int d[100][100],db[100][100],n,m,a,b,c,ga,gb,min,tot;

int main(){
  scanf("%d", &n);
  for(a=0;a<n;a++){
    db[a][a]=0;
    for(b=a+1;b<n;b++){
      scanf("%d",&d[a][b]);
      d[b][a]=d[a][b];
      db[a][b]=db[b][a]=INF;
    }
  }
  tot=0;
  m=0;
  while(1){
    min=INF;
    for(a=0;a<n;a++){
      for(b=a+1;b<n;b++){
	if((db[a][b]!=d[a][b]) && (d[a][b]<min)) {
	  min=d[a][b];
	  ga=a;
	  gb=b;
	}
      }
    }
    if(min==INF) break;
    db[ga][gb]=db[gb][ga]=d[ga][gb];
    tot+=d[ga][gb];
    for(a=0;a<n;a++){
      for(b=a+1;b<n;b++){
	c=db[ga][gb]+MIN(db[a][ga]+db[gb][b],db[a][gb]+db[ga][b]);
	db[a][b]<?=c;
	db[b][a]<?=c;
      }
    }
  }
  printf("%d\n",tot);
  return 0;
}
