====== A의 배수 ====== ===== 풀이 ===== * 만약 아무 제약이 없다면, 매턴 1개씩 지울수 있으므로, N이 홀수면 선공의 승리, N이 짝수면 후공의 승리이다 * 제약이 유효한 경우는, 마지막에 x와 Ax만이 남아있는 상태에서, 현재 턴 플레이어가 Ax를 지우는 경우 뿐이다. 하지만, 한 플레이어가 저 상황을 만들려고 아무리 노력해도 상대는 그렇게 남지 않도록 만드는 방법이 존재한다. 그러므로 제약이 없다면 패배하는 플레이어가 저 제약을 이용해서 승리하는 것은 불가능하다. 다만 그것이 가능한 유일한 경우는 A=N=2일 경우인데, 이때는 후공이 2를 지움으로써 승리하는 것이 가능하다. 그 경우만 예외처리해주면 끝. ===== 코드 ===== """Solution code for "BOJ 34124. $A$의 배수". - Problem link: https://www.acmicpc.net/problem/34124 - Solution link: http://www.teferi.net/ps/problems/boj/34124 Tags: [game theory] """ import sys def main(): Q = int(sys.stdin.readline()) for _ in range(Q): N, A = [int(x) for x in sys.stdin.readline().split()] if N == A == 2: print('O') else: print('O' if N % 2 == 1 else 'I') if __name__ == '__main__': main() {{tag>BOJ ps:problems:boj:골드_2}}