나이트 게임

시간 제한1초메모리 제한512 MB

요약
N x N 체스판에 두 사람이 번갈아 서로 공격하지 않는 나이트를 놓고, N이 10,000까지일 때 최적 플레이의 승자를 판정한다.
난이도

어려움10점 중 8점

유형
게임 이론, 수학, 조합론, 구현
정답자
아직 제출이 없습니다

문제

나이트 게임은 크기가 N×NN\times N인 체스판 위에서 진행되는 게임이고, 나이트를 하나씩 턴을 번갈아가며 놓는 게임이다.

나이트는 이미 놓여져 있는 나이트가 공격할 수 있는 칸에 놓을 수 없다. 나이트를 (r,c)(r, c)에 놓은 경우에는 (r−2,c+1)(r-2, c+1), (r−1,c+2)(r-1, c+2), (r+1,c+2)(r+1, c+2), (r+2,c+1)(r+2, c+1), (r+2,c−1)(r+2, c-1), (r+1,c−2)(r+1, c-2), (r−1,c−2)(r-1, c-2), (r−2,c−1)(r-2, c-1)이 공격할 수 있는 칸이다.

나이트를 놓을 수 있는 칸이 없는 사람이 게임을 지게 된다. 구사과와 큐브러버가 이 게임을 최적의 방법으로 플레이했을 때, 이기는 사람을 구하는 프로그램을 작성하시오. 게임은 구사과가 먼저 시작한다.

입력

첫째 줄에 테스트 케이스의 개수 T(1≤T≤100)T(1 \le T \le 100)가 주어진다. 둘째 줄부터 TT개의 줄에 테스트 케이스가 한 줄에 하나씩 주어지며, 체스판의 크기 N(1≤N≤10,000)N(1 \le N \le 10,000)으로 이루어져 있다.

출력

각각의 테스트 케이스마다 게임을 이기는 사람을 출력한다. 구사과가 이기는 경우에는 "koosaga", 큐브러버가 이기는 경우에는 "cubelover"를 출력한다.

예제1

  1. 예제 1

    입력
    2
    2
    1
    
    예상 출력
    cubelover
    koosaga