728x90
반응형

import sys
from collections import deque
input = sys.stdin.readline

def BOJ9655() :
  N = int(input())
  players = ["SK", "CY"]
  dp = [3 for _ in range(1001)]
  dp[0] = 1

  for i in range(1001) :
    if dp[i] != 3 :
      player = dp[i]
      next_player = player ^ 1
      if i + 1 < 1001 :
        dp[i+1] = next_player
      if i + 3 < 1001:
        dp[i+3] = next_player

  print(players[dp[N]])
BOJ9655()

 

접근 방법 :

1.  돌 개수를 배열로 선언하고 각 개수일때에 어느 플레이어가 가져가게 되는지를 배열의 정보로 나타내고 싶었다.

2. 내 차례가 왔을때 1개를 가져갔을때, 3개를 가져갔을때 내가 가져간것으로 표시해준다.

3. 플레이어를 변경해주고 2번의 과정을 반복한다.

 

 

 

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

 

9655번: 돌 게임

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

www.acmicpc.net

 

728x90
반응형

+ Recent posts