-
[BOJ / C++] 9656번 : 돌 게임 2Study (etc)/Problem Solving 2023. 8. 4. 16:54
문제
돌 게임은 두 명이서 즐기는 재밌는 게임이다.
탁자 위에 돌 N개가 있다. 상근이와 창영이는 턴을 번갈아가면서 돌을 가져가며, 돌은 1개 또는 3개 가져갈 수 있다. 마지막 돌을 가져가는 사람이 게임을 지게 된다.
두 사람이 완벽하게 게임을 했을 때, 이기는 사람을 구하는 프로그램을 작성하시오. 게임은 상근이가 먼저 시작한다.
입력
첫째 줄에 N이 주어진다. (1 ≤ N ≤ 1000)
출력
상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다.
Solved.ac 레벨
실버 IV
풀이
DP 문제긴 한데... 돌 게임 문제는 워낙 유명한 시리즈 문제이기도 하고...
돌이 4개일때, 5개일때.... 계속 경우의 수를 구해나가다 보면 돌이 짝수개면 상근이가, 돌이 홀수개면 창영이가 무조건 이긴다.
Code
#include<bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); int n; cin >> n; if(n % 2 == 0) { cout << "SK\n"; } else { cout << "CY\n"; } return 0; }
9656번: 돌 게임 2
상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다.
www.acmicpc.net
'Study (etc) > Problem Solving' 카테고리의 다른 글
[BOJ / C++] 9251번 : LCS (0) 2023.08.07 [BOJ / C++] 12865번 : 평범한 배낭 (0) 2023.08.04 [BOJ / C++] 16194번 : 카드 구매하기 2 (0) 2023.08.04 [BOJ / C++] 2011번 : 암호코드 (0) 2023.08.02 [BOJ / C++] 13023번 : ABCDE (0) 2023.08.01