#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int, int> ii;
const int INF = 1e9;
const ll LINF = 1e18;
template<typename T>
void minimize(T& a, const T& b) {
if (b < a) a = b;
}
int n;
int C[15][15];
int dp[1 << 15][15]; // dp[mask][i]: Chi phí nhỏ nhất của hành trình đi qua tất cả các nước có trong mask,
// mỗi nước đúng một lần và dừng chân tại đất nước i
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
cin >> n;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) cin >> C[i][j];
}
for (int mask = 0; mask < (1 << n); mask++) {
for (int i = 0; i < n; i++) {
int& cur = dp[mask][i];
if (mask == (1 << i)) {
cur = 0;
continue;
}
cur = INF;
if (!(mask & (1 << i))) continue;
for (int j = 0; j < n; j++) {
int prev_mask = mask ^ (1 << i);
minimize(dp[mask][i], dp[prev_mask][j] + C[i][j]);
}
}
}
int ans = INF;
for (int i = 0; i < n; i++) {
minimize(ans, dp[(1 << n) - 1][i]);
}
cout << ans << '\n';
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOyAgCgp0eXBlZGVmIGxvbmcgbG9uZyBsbDsgIAp0eXBlZGVmIHBhaXI8aW50LCBpbnQ+IGlpOyAgCgpjb25zdCBpbnQgSU5GID0gMWU5OyAgCmNvbnN0IGxsIExJTkYgPSAxZTE4OyAgCgp0ZW1wbGF0ZTx0eXBlbmFtZSBUPgp2b2lkIG1pbmltaXplKFQmIGEsIGNvbnN0IFQmIGIpIHsKCWlmIChiIDwgYSkgYSA9IGI7IAp9CgppbnQgbjsgIAppbnQgQ1sxNV1bMTVdOyAgCmludCBkcFsxIDw8IDE1XVsxNV07IC8vIGRwW21hc2tdW2ldOiBDaGkgcGjDrSBuaOG7jyBuaOG6pXQgY+G7p2EgaMOgbmggdHLDrG5oIMSRaSBxdWEgdOG6pXQgY+G6oyBjw6FjIG7GsOG7m2MgY8OzIHRyb25nIG1hc2ssCgkJCQkJIC8vIAkJCSBt4buXaSBuxrDhu5tjIMSRw7puZyBt4buZdCBs4bqnbiB2w6AgZOG7q25nIGNow6JuIHThuqFpIMSR4bqldCBuxrDhu5tjIGkKCmludCBtYWluKCkgewoJaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyAKCWNpbi50aWUobnVsbHB0cik7ICAJCgljaW4gPj4gbjsgCglmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykgewoJCWZvciAoaW50IGogPSAwOyBqIDwgbjsgaisrKSBjaW4gPj4gQ1tpXVtqXTsgCgl9CgoJZm9yIChpbnQgbWFzayA9IDA7IG1hc2sgPCAoMSA8PCBuKTsgbWFzaysrKSB7CgkJZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspIHsKCQkJaW50JiBjdXIgPSBkcFttYXNrXVtpXTsKCQkJaWYgKG1hc2sgPT0gKDEgPDwgaSkpIHsKCQkJCWN1ciA9IDA7IAoJCQkJY29udGludWU7CgkJCX0KCQkJY3VyID0gSU5GOyAKCQkJaWYgKCEobWFzayAmICgxIDw8IGkpKSkgY29udGludWU7IAoJCQlmb3IgKGludCBqID0gMDsgaiA8IG47IGorKykgewoJCQkJaW50IHByZXZfbWFzayA9IG1hc2sgXiAoMSA8PCBpKTsgCgkJCQltaW5pbWl6ZShkcFttYXNrXVtpXSwgZHBbcHJldl9tYXNrXVtqXSArIENbaV1bal0pOyAKCQkJfQoJCX0KCX0KCglpbnQgYW5zID0gSU5GOyAKCWZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CgkJbWluaW1pemUoYW5zLCBkcFsoMSA8PCBuKSAtIDFdW2ldKTsgCgl9CgoJY291dCA8PCBhbnMgPDwgJ1xuJzsKfQ==