#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define INF 1e9 #define PI acos(-1) typedef long long ll; int n; char game[6][6]; int dfs(int x) { if (x == 0) { int win[6] = {0}; for (int i = 0; i < n; i++)for (int j = 0; j < n; j++) { win[i] += game[i][j] == 'o'; } int ret = 0; for (int i = n;; i--) { for (int j = 0; j < n; j++) if (win[j] == i) { ret++; break; } if (win[0] == i) return ret; } } else { int ret = INT_MAX; for (int i = 0; i < n; i++)for (int j = 0; j < i; j++) { if (game[i][j] == '-') { game[i][j] = 'o'; game[j][i] = 'x'; ret = min(ret, dfs(x - 1)); game[i][j] = 'x'; game[j][i] = 'o'; ret = min(ret, dfs(x - 1)); game[i][j] = game[j][i] = '-'; return ret; } } return ret; } } int main() { cin >> n; for (int i = 0; i < n; i++)cin >> game[i]; int bar = 0; for (int i = 0; i < n; i++)for (int j = 0; j < i; j++)bar += game[i][j] == '-'; cout << dfs(bar) << endl; return 0; }