// ナニソレイミワカンナイ #include #include #include int N; char result[6][6]; int win[6]; int rec(int x, int y){ if(y == N-1){ std::vector v(win, win+N); std::sort(v.begin(), v.end()); v.erase(std::unique(v.begin(), v.end()), v.end()); return v.size() - (std::lower_bound(v.begin(), v.end(), win[0]) - v.begin()); } int nx, ny; if(x+1 == N){ ny = y + 1; nx = ny + 1; }else{ ny = y; nx = x + 1; } int res = N; if(result[y][x] == '-'){ win[x] += 1; res = std::min(res, rec(nx, ny)); win[x] -= 1; win[y] += 1; res = std::min(res, rec(nx, ny)); win[y] -= 1; }else{ res = std::min(res, rec(nx, ny)); } return res; } int main(){ scanf("%d", &N); for(int i=0;i