g0201_0300.s0292_nim_game.Solution Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of leetcode-in-java21 Show documentation
Show all versions of leetcode-in-java21 Show documentation
Java-based LeetCode algorithm problem solutions, regularly updated
package g0201_0300.s0292_nim_game;
// #Easy #Math #Game_Theory #Brainteaser #2022_07_06_Time_0_ms_(100.00%)_Space_40.6_MB_(71.00%)
/**
* 292 - Nim Game\.
*
* Easy
*
* You are playing the following Nim Game with your friend:
*
* * Initially, there is a heap of stones on the table.
* * You and your friend will alternate taking turns, and **you go first**.
* * On each turn, the person whose turn it is will remove 1 to 3 stones from the heap.
* * The one who removes the last stone is the winner.
*
* Given `n`, the number of stones in the heap, return `true` _if you can win the game assuming both you and your friend play optimally, otherwise return_ `false`.
*
* **Example 1:**
*
* **Input:** n = 4
*
* **Output:** false
*
* **Explanation:**
*
* These are the possible outcomes:
* 1. You remove 1 stone. Your friend removes 3 stones, including the last stone. Your friend wins.
* 2. You remove 2 stones. Your friend removes 2 stones, including the last stone. Your friend wins.
* 3. You remove 3 stones. Your friend removes the last stone. Your friend wins.
* In all outcomes, your friend wins.
*
* **Example 2:**
*
* **Input:** n = 1
*
* **Output:** true
*
* **Example 3:**
*
* **Input:** n = 2
*
* **Output:** true
*
* **Constraints:**
*
* * 1 <= n <= 231 - 1
**/
public class Solution {
public boolean canWinNim(int n) {
return n % 4 != 0;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy