222222

h2022036 2023-10-04 16:26:45

#include<bits/stdc++.h> using namespace std;

int a[20][20], ans = 1e9, n; bool st[20];

void dfs(int x, int res){ if(x == n + 1){ ans = min(ans, res); return; } for(int i = 1;i <= n;i++){ if(st[i] == false) { st[i] = true; dfs(x + 1, res + a[x][i]); st[i] = false; } } }

int main() { int n; cin >> n; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ cin >> a[i][j]; } } dfs(1, 6); cout << ans << endl; return 0; }