#include <iostream>
#include <algorithm>
using namespace std;
const int N = 15, INF = 0x3f3f3f3f;
int n, g[N][N], ans;
int main(){
cin>>n;
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
cin>>g[i][j];
for(int k=0; k<n; k++)
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
g[i][j] = min(g[i][j], g[i][k] + g[k][j]);
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
ans = max(g[i][j], ans);
cout<<ans;
}