Algorithm/백준

[백준] 9658 돌 게임4

SSONGMI 2021. 3. 26. 19:59
반응형

문제 출처: www.acmicpc.net/problem/9658

 

9658번: 돌 게임 4

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

www.acmicpc.net

: 상근이와 창영이가 턴을 번갈아가면서 돌을 가져가고, 돌은 1개 3개 또는 4개씩 가져갈 수 있다

: 승리 조건은 창영이가 모두 이기는 경우에 상근이가 지고, 상근이가 한번이라도 이기는 경우가 있을 때는 창영이가 진다.

package algo;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

public class 돌게임4 {
	static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
	static StringBuilder sb = new StringBuilder();
	static StringTokenizer st;
	public static void main(String[] args) throws NumberFormatException, IOException {
		int N = Integer.parseInt(br.readLine());
		boolean[] D = new boolean[N+4];
		Arrays.fill(D, true);
		D[1] = false; // 상근이가 이기면 true, 상근이가 지면 false;
		D[2] = true;
		D[3] = false;
		D[4] = true;
		for(int i = 5; i < N+1; i++) {
			if(D[i-1] && D[i-3] && D[i-4]) D[i] = false;
		}
//		System.out.println(Arrays.toString(D));
		if(D[N]) System.out.println("SK");
		else System.out.println("CY");
	}
}
반응형