문제 분류 수업 진도 대회 채점현황 순위 질문게시판
게임
스도쿠 타이핑 리듬 타자게임 타이핑 테트리스 타이핑 인베이더 타이핑 지뢰찾기 8192 공룡게임 타이핑 플래피버드 랭킹
로그인

8060 : 님 게임

•시간제한: 3.000 S •메모리제한: 256 MB •제출: 0 •통과: 0 •만든사람: suakii

8060 : 님 게임

시간 3.000s · 메모리 256MB · 제출 0 · 정답 0

문제 설명

$n$개의 돌 더미가 있고, 각 더미에는 일정한 개수의 돌이 있습니다. 두 명의 플레이어가 번갈아가며 게임을 진행합니다.
자신의 차례가 되면 하나의 돌 더미를 선택해 $1$개 이상의 돌을 제거할 수 있습니다. 마지막 돌을 제거하는 사람이 게임에서 승리합니다. (즉, 더 이상 돌을 가져갈 수 없는 사람이 패배합니다.)
두 플레이어가 최적의 전략으로 게임에 임할 때, 첫 번째 플레이어가 이기는지, 두 번째 플레이어가 이기는지 판정하십시오.



[제약 조건]
• $1 \le t \le 100$
• $1 \le n \le 200{,}000$ (모든 테스트 케이스의 $n$의 합 $\le 200{,}000$)
• $1 \le x_i \le 10^9$

입력 설명

첫째 줄에 테스트 케이스의 개수 $t$가 주어집니다. ($1 \le t \le 100$)
각 테스트 케이스는 두 줄로 구성됩니다:
- 첫째 줄에 돌 더미의 개수 $n$이 주어집니다. ($1 \le n \le 200{,}000$)
- 둘째 줄에 각 더미의 돌 개수 $x_1, x_2, \dots, x_n$이 공백으로 구분되어 주어집니다. ($1 \le x_i \le 10^9$)
모든 테스트 케이스의 $n$의 합은 $200{,}000$을 초과하지 않습니다.

출력 설명

각 테스트 케이스에 대해 첫 번째 플레이어가 이기면 first, 두 번째 플레이어가 이기면 second를 한 줄에 하나씩 출력합니다.

입력 예시
COPY
복사되었습니다!

3
4
5 7 2 5
2
2 2
3
1 2 3

출력 예시
COPY
복사되었습니다!

first
second
second

도움

스프라그-그룬디 정리에 의해, 님 게임의 각 상태의 그룬디 값은 각 더미 돌 개수들의 XOR 합(Nim-sum) $S = x_1 \oplus x_2 \oplus \dots \oplus x_n$과 같습니다. $S \neq 0$인 경우 선공(first)의 필승 상태이고, $S = 0$인 경우 후공(second)의 필승 상태입니다.

출처/분류

NOTICE  —  BFStudy OJ 정보샘
애들아, 문제 많이 풀고 게임 잠깐 하는거지?
— 정보샘