대기업 코테 유형

(백준/파이썬) [Silver V] 돌 게임 - 9655

난쟁이 개발자 2024. 9. 4. 02:48
반응형

[Silver V] 돌 게임 - 9655

문제 링크

성능 요약

메모리: 108080 KB, 시간: 96 ms

분류

다이나믹 프로그래밍, 게임 이론, 수학

제출 일자

2024년 8월 16일 05:10:56

문제 설명

돌 게임은 두 명이서 즐기는 재밌는 게임이다.

탁자 위에 돌 N개가 있다. 상근이와 창영이는 턴을 번갈아가면서 돌을 가져가며, 돌은 1개 또는 3개 가져갈 수 있다. 마지막 돌을 가져가는 사람이 게임을 이기게 된다.

두 사람이 완벽하게 게임을 했을 때, 이기는 사람을 구하는 프로그램을 작성하시오. 게임은 상근이가 먼저 시작한다.

입력

첫째 줄에 N이 주어진다. (1 ≤ N ≤ 1000)

출력

상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다.

 

풀이

1개 또는 3개를 취할 수 있다. 를 잘 생각해보면, 무조건 승리할 수 있는 조건을 생각해야한다. N을 1부터 천천히 생각해보면, N이 홀수이면, SK를, N이 짝수이면 CY를 리턴해야한다는 것을 알 수 있다. 

더보기
N = int(input())

if N%2 :
    print("SK")
else :
    print("CY")
반응형