백준(Python) 풀이/수학

백준(Python) 9655번 돌 게임 풀이

개발윗미 2021. 10. 14. 09:57

Python으로 구현한 9655번 돌 게임 문제 풀이입니다.

 

https://www.acmicpc.net/problem/9655

 

9655번: 돌 게임

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

www.acmicpc.net


n = int(input())
count = 0

while n > 0 :
  count += 1
  if n >= 3 :
    n -= 3
  else :
    n -= 1

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

 

기본적으로 돌 게임을 하는 사람 수는 두 명이고, 상근이가 먼저 시작하기 때문에 홀수번째 차례는 상근이가 되고,

 

짝수번째 차례는 창영이가 된다. 그렇기 때문에 반복문 내에서 한 차례가 진행될 때마다 count를 1증가시킨다.

 

또한, 조건문을 통해 입력받은 n이 3보다 크거나 같을 경우에는 돌을 3개 가져갈 수 있으므로 n에서 3을 빼주고

 

n이 3보다 작을 경우에는 돌을 1개만 가져갈 수 있으므로 n에서 1을 빼준다. 이러한 과정을 n이 0이 될때까지 진행한다.

 

반복문이 끝난 후에는 count값이 홀수인지 짝수인지를 판별하여 짝수라면 "CY"를, 홀수라면 "SK"를 출력한다.