#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define esp 0.00000000001
const int N=2e5+10,M=1e6+10,inf=1e9+10,mod=1e9+7;
int dp[N][20];
int mp[20][20];
int main()
{
int x,y,z,i,t;
for(i=0;i<N;i++)
for(t=0;t<17;t++)
dp[i][t]=inf;
scanf("%d",&x);
x++;
for(i=1;i<=x;i++)
for(t=1;t<=x;t++)
scanf("%d",&mp[i][t]);
for(int k = 1; k <= x; k++)
for(int i = 1; i <= x; i++)
for(int j = 1; j <= x; j++)
mp[i][j] = min(mp[i][j], mp[i][k] + mp[k][j]);
dp[2][1]=0;
for(t=0;t<(1<<(x+1));t++)
{
for(i=1;i<=x;i++)
{
for(int j=1;j<=x;j++)
if (((t&(1<<i))!=0) && ((t&(1<<j))!=0))
dp[t][i]=min(dp[t][i],dp[t^(1<<i)][j]+mp[j][i]);
}
}
int ans=inf;
for(int i=1;i<=x;i++)
ans=min(ans,mp[i][1]+dp[(1<<(x+1))-2][i]);
printf("%d\n",ans);
return 0;
}