문제 설명
N개의 돌
에서 1개 또는 3개씩
빼올 때 마지막 돌
을 홀수번째
에 빼는지 짝수번째
에 빼는지 알아내는 문제와 동일합니다.
접근법
1~3
개를 가져오는 것이 아니라 1개 또는 3개
를 가져와야 합니다.
- 문제를 읽다보면 오로지
N의 개수
가 이기는 사람
을 결정한다는 걸 알 수 있습니다.
- 중간에 1개를 가져가든 3개를 가져가든 결과에 아무런 영향을 미치지 않습니다.
- 그 이유는 A가 4번째 돌, B가 3번째 돌, A가 2번째 돌, B가 1번째 돌을 가지는
A->B->A->B
와 A가 4번째 돌, 3번째 돌, 2번째 돌을 가지고 B가 1번째 돌을 가지는 A->B
의 결과가 같기 때문입니다.
A->B->A == A
- 1개를 가져오는 결과와 3개를 가져오는 결과가 어차피 같다면 1개를 가져오는 경우만 생각해도 상관없습니다.
A(A승)
,A->B(B승)
,A->B->A(A승)
,A->B->A->B(B승)
,A->B->A->B->A(A승)
,...
N
이 홀수
면 A
가 승리하고, N
이 짝수
면 B
가 승리합니다.
정답
N = int(input())
if N%2 == 0:
print("CY")
else:
print("SK")