๋ ๊ฒ์์ ๋ ๋ช ์ด์ ์ฆ๊ธฐ๋ ์ฌ๋ฐ๋ ๊ฒ์์ด๋ค.
ํ์ ์์ ๋ N๊ฐ๊ฐ ์๋ค. ์๊ทผ์ด์ ์ฐฝ์์ด๋ ํด์ ๋ฒ๊ฐ์๊ฐ๋ฉด์ ๋์ ๊ฐ์ ธ๊ฐ๋ฉฐ, ๋์ 1๊ฐ ๋๋ 3๊ฐ ๊ฐ์ ธ๊ฐ ์ ์๋ค. ๋ง์ง๋ง ๋์ ๊ฐ์ ธ๊ฐ๋ ์ฌ๋์ด ๊ฒ์์ ์ด๊ธฐ๊ฒ ๋๋ค.
๋ ์ฌ๋์ด ์๋ฒฝํ๊ฒ ๊ฒ์์ ํ์ ๋, ์ด๊ธฐ๋ ์ฌ๋์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๊ฒ์์ ์๊ทผ์ด๊ฐ ๋จผ์ ์์ํ๋ค.
์ค๋ณต๋ ํ์ ๋ฌธ์ ๋ค์ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ๋ฉฐ ํ์ดํด๋๊ฐ๋ ๊ฒ
์ผ๋ฐ์ ์ผ๋ก ํ๋์ ํฐ ๋ฌธ์ ๋ฅผ ์์ ๋ฌธ์ ๋ก ์ชผ๊ฐ๋ ๋ฐฉ์์ ๋ถํ ์ ๋ณต์ด๋ผ๊ณ ํ๋๋ฐ ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ(DP, Dynamic Programming)์ ๊ทธ ์์ ๋ฌธ์ ๋ค์ด ์ค๋ณต๋๋ ๋ฌธ์ ๋ค์ด๋ผ ๊ทธ ๋ฌธ์ ๋ค์ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ๋ฉด ๋ ํฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๋ ์จ๋จน์ ์ ์๋ค๋ผ๋ ์ฐจ์ด๊ฐ ์๋ค.
์ฆ, ๋ฌธ์ ์ ์ต์ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ถ๋ถ ๋ฌธ์ ์ ๋ํ ์ต์ ํด๊ฒฐ ๋ฐฉ๋ฒ์ผ๋ก ๊ตฌ์ฑ๋๋ค
dp๋ผ๋ ๋ฐฐ์ด์ ๋ง๋ค์ด ์ธ๋ฑ์ค ๊ฐ = ๋์ ๊ฐ์๋ก ๋๊ธฐ๋ก ํ๋ค. ๋ฒ๊ฐ์๊ฐ๋ฉฐ 1๊ฐ ๋๋ 3๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๊ฒ ๋๋๋ฐ, ๊ฐ์ ธ๊ฐ๊ฒ ๋๊ณ ๋จ๋ ๋์ ๊ฐ์์ ์นธ์ 1์ ๋ฃ์๋ค. ์ผ์ข
์ ๋ฐฉ๋ฌธ์ฒ๋ฆฌ๋ฅผ ํ ์
์ธ๋ฐ, ์ด๋ ๊ฒ ๋๋ฉด ๋๊ฐ 3๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๊ณ ๋จ์ ๊ฒ 7๊ฐ์ธ๋ฐ 7๊ฐ์ 1์ด ์ฐํ์๊ฒ ๋๋ฉด(์ด๋ฏธ ๊ทธ ์ด์ ์ ๋๊ตฐ๊ฐ๊ฐ ๊ฐ์ ธ๊ฐ๊ณ ๋จ์ ์ซ์์๋ ๊ฒ) 3๊ฐ๋ ๊ฐ์ ธ๊ฐ ์ ์๊ฒ ๋๋ค. ๊ทธ๋ฐ๋ฐ ์ด๋ ๊ฒ ๋๋ฉด ๋งค๋ฒ ๊ทธ๋ฅ bfs๊ฐ ๋๋ค. dp๋ผ๋ ๋ฐฐ์ด์ ๋จ์ visited๊ฐ ๋๊ณ ๋งค๋ฒ queue์ ์ด์ ๋ผ์ด๋์์ ๋ช ๊ฐ์ ๋์ด ๋จ์์๋์ง๋ฅผ ๋ค ์ ์ฅํด๋ฌ์ผ ํ๋ค. ์ฌ์ง์ด ๋ผ์ด๋ ํ์๋ฅผ ๊ณ์ฐํด์ฃผ๋ ๊ฑด turn
์ด๋ผ๋ ๋ณ๊ฐ์ ๋ณ์๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ํ์๋ค.
dp๊ฐ ์๋๋ผ๋ ์๊ฐ์ด ๋ค์์...
ํ์ด๋ฅผ ์ฐธ๊ณ
์์์ ๋ด๊ฐ ์๊ฐํ ๋ฐฉ์์ ํํฅ์์ ๊ฐ๊น๊ณ ์ด ํ์ด๋ ์ํฅ์์ด๋ค
์ฐพ์๋ณด๋ dp๋ ์ผ๋ฐ์ ์ผ๋ก 0๋ถํฐ ์์ํ๋ ์ํฅ์์ผ๋ก ๋ง์ด ํ๊ฒ ๋๊ณ , ํํฅ์์ ๊ฒฝ์ฐ๋ ์ฌ๊ท๋ฅผ ์ฌ์ฉํ๋ค๊ณ ํ๋ค.
์ด์จ๋ ์ด ํ์ด์ ๋ด ํ์ด์ ๊ฐ์ฅ ํฐ ์ฐจ์ด๋ ๋ค์๊ณผ ๊ฐ๋ค
dp๋ผ๋ ๋ฐฐ์ด์ ์ธ๋ฑ์ค ๊ฐ์ ๋์ ๊ฐ์
๋ฐฐ์ด์ ๊ฐ ์นธ์ ๋ค์ด๊ฐ๋ ๊ฐ์ ๊ฒ์์ ๋ผ์ด๋ ํ์ฐจ
dp[3]์ ๋ค์ด๊ฐ๊ฒ ๋๋ ๊ฐ์ ๋ 3๊ฐ๋ฅผ ๋๊ณ ๊ฒ์ํ์ ๋ ์งํ๋๋ ์ต์ข ๋ผ์ด๋์ ํ์. ๊ฒ์์ 1๊ฐ ๋๋ 3๊ฐ์ ๋์ ๊ฐ์ ธ๊ฐ๋ ๋ฐฉ์์ผ๋ก ์งํ๋๋ฏ๋ก 1๊ฐ๋ 3๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๋ฉด ๋ผ์ด๋ ํ์๊ฐ 1์ฉ ์ฆ๊ฐํ๋ค. dp[3]์ dp[0](3๊ฐ์์ 3๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๋ฉด 0๊ฐ๊ฐ ๋จ์)๋๋ dp[2](3๊ฐ์์ 1๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๋ฉด 2๊ฐ๊ฐ ๋จ์)์ ํ์์ +1์ ํ ๊ฐ์ด ๋๋ ๊ฒ. ๋น์ฐํ ๋ ์ค ๋ ์์ ๊ฐ๋ง ๊ฐ์ ธ์์ ๊ณ์ฐํ๋ฉด ๋จ
์ ๋ฆฌํ์๋ฉด DP ๋ฌธ์ ์์ dp๋ผ๋ ๋ฐฐ์ด์ ๋ฃ์ด์ผ ํ ๊ฐ์
์์๋๋ก ์ด์ด์ง๋ ๊ฐ = ๋ฐฐ์ด์ ์ธ๋ฑ์ค
์ต์ข ์ ์ผ๋ก ๊ตฌํด์ผ ํ๋ ๊ฐ = ๊ทธ ๋ฐฐ์ด์ ๊ฐ ์ธ๋ฑ์ค์ ๋ค์ด๊ฐ ๊ฐ
N = int(input())
def rock_game():
dp = [0]*1001
dp[1], dp[2] = 1, 2
for i in range(3, N+1):
dp[i] = min(dp[i-1] ,dp[i-3])+1
# ํ์๊ฐ ์ง์๋ฉด CY, ํ์๋ฉด SK๊ฐ ์น๋ฆฌํ ๊ฒ
if dp[N] % 2:
return 'SK'
return 'CY'
print(rock_game())