Leetcode Java Nim Game
업데이트:
문제
코드
class Solution {
public boolean canWinNim(int n) {
return n % 4 != 0;
}
}
결과
설명
- 주어진 정수 n을 이용하여 친구와 Nim Game을 하여 승리할 수 있는지 여부를 반환하는 문제이다.
- Nim Game이란 탁자 위에 돌들을 올려놓고 먼저 1개에서 3개까지 돌을 제거 하며 순서를 교대하다 마지막 돌을 제거하는 사람이 승자인 게임이다.
- 주어진 정수 n을 4로 나눈 나머지 값이 0이 아닌 경우 true를, 아니면 false를 주어진 문제의 결과로 반환한다.
- n이 4인 경우, 처음 순서로 1 ~ 3 개를 제거하더라도 승리할 수 없다.
- n이 5인 경우, 처음에 1개를 제거 후 친구가 1 ~ 3 개 중 임의의 개수를 제거하더라도 1 ~ 3개의 돌이 남으므로 다음에 돌아온 내 순서에서 승리가 가능하다.
- 이를 동일하게 n이 $4 \times N$(N >= 1)의 숫자가 아닌 경우, 승리 할 수 있다고 판단한다.
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기