423

#include <iostream>
#include <string.h>

#define FOR(i,n)  for(int i=1;i<=n;i++)
#define INF 1<<29

using namespace std;

int gr[101][101];

int main()
{
	int n,MN;
	string a;

	while(cin>>n)
	{
		MN = INF;
		FOR(i,n)
		{
			FOR(j,n)
			{
				gr[i][j]=INF;
				if(i==j)
				gr[i][j]=0;
			}
		}

		for(int i=2;i<=n;i++)
		{
			for(int j=1;j<i;j++)
			{
				cin>>a;
				if(a=="x")
				gr[i][j]=gr[j][i]=INF;
				else
				{
					int t=0;

					for(int x=0;x<a.size();x++)
					{
						t = t*10+ (a[x]-48);
					}
					gr[i][j]=gr[j][i]=t;
				}
			}
		}

		FOR(k,n)
		{
			FOR(i,n)
			{
				FOR(j,n)
				{
					if(gr[i][j]>gr[i][k]+gr[k][j])
						gr[i][j] = gr[i][k]+gr[k][j];
				}
			}

		}
		MN=0;
		FOR(i,n)
		{
			if(gr[1][i]>MN)
			MN = gr[1][i];
		}

		cout<<MN<<"\n";
	}

	return 0;
}

 

Leave a Reply

Your email address will not be published. Required fields are marked *