#include <bits/stdc++.h>
#define int long long
using namespace std;
int n, g[1 << 20][25], f[1 << 20][25];
signed main()
{
ios::sync_with_stdio(0);
cin.tie(0), cout.tie(0);
memset(f, 0x3f, sizeof f);
f[1][1] = 0;
cin >> n;
for (int i = 1; i <= n; ++i)
for (int j = 1; j <= n; ++j)
cin >> g[i][j];
for (int k = 1; k <= (1 << n) - 1; ++k)
for (int i = 1; i <= n; ++i)
if ((k >> (i - 1)) & 1)
for (int j = 1; j <= n; ++j)
if (i != j && ((k >> (j - 1)) & 1))
f[i][k] = min(f[i][k], f[j][k - (1 << (i - 1))] + g[i][j]);
cout << f[n][(1 << n) - 1] << '\n';
return 0;
}