}
else{
g[i][j]=INF;
//g[j][i]=INF;
}
}
}
for(int i=2;i<=n;i++){
for(int j=1;j<=i-1;j++){
scanf("%s",&t);
if(t[0]=='x'){
g[j][i]=INF;
g[i][j]=INF;
}
else{
g[j][i]=atoi(t); // atoi();将字符串转为整型。
g[i][j]=atoi(t);
}
}
}
for(int i=1;i<=n;i++){
dis[i]=INF;
}
dis[1]=0;
memset(v,0,sizeof v);
for(int i=1;i<=n;i++){
int mark=-1,mindis=INF;
for(int j=1;j<=n;j++){
if(!v[j]&&dis[j]
mindis=dis[j];
mark=j;
}
}
v[mark]=1;
for(int j=1;j<=n;j++){
if(!v[j]){
dis[j]=min(dis[j],dis[mark]+g[mark][j]);
}
}
}
/*for(int j=1;j<=n;j++){
cout<
}*/
int themax=0;
for(int j=2;j<=n;j++){
if(themax
themax=dis[j];
}
printf("%d\n",themax);
}
}