DynamicProgramming_1_04_돌 게임(9655)

DynamicProgramming1_04돌 게임(9655)

문제

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

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

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

입력

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

출력

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

풀이

  • 10 : 3331 / 331111 / 311111111 / 짝수는 짝수 개수로 나뉘어 끝남.
  • 11 : 33311 / 33311111 / 3311111111 / 311111111111 / 홀수는 홀수로 나뉘어져 끝남 - - 왜냐? 1과 3이 둘다 홀수기 때문.
  • 따라서 홀/짝 구분하여 SK/CY 출력하면 된다.

코드

import sys

sys.stdin=open("input.txt","rt")

def input():
    return sys.stdin.readline().rstrip()

N = int(input())

if N % 2 == 0:
    print("CY")
else:
    print("SK")

배운 것

코멘트

좋은 웹페이지 즐겨찾기