poj1502

#include<stdio.h>//考英语的题坑。。。
#include<string.h>
#define N 200
#define inf 999999999
int map[N][N];
int main() {
int i,j,k,n,m,max;
char s[20];
while(scanf("%d",&n)!=EOF) {
memset(map,0,sizeof(map));
for(i=2;i<=n;i++)
for(j=1;j<i;j++) {
scanf("%s",s);
if(s[0]!='x') {
m=0;
for(k=0;s[k];k++)
m=m*10+s[k]-'0';
}
else
m=inf;
map[i][j]=map[j][i]=m;
}
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(map[i][k]<inf&&map[k][j]<inf&&map[i][k]+map[k][j]<map[i][j])
map[i][j]=map[i][k]+map[k][j];
max=-1;
for(i=2;i<=n;i++)
if(map[1][i]>max)
max=map[1][i];
printf("%d\n",max);
}
return 0;
}
posted @ 2013-11-11 13:57  HYDhyd  阅读(104)  评论(0编辑  收藏  举报