Problem Statement:
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:
- You remove 1 stone. Your friend removes 3 stones, including the last stone. Your friend wins.
- You remove 2 stones. Your friend removes 2 stones, including the last stone. Your friend wins.
- 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
Solution:
Algorithm:
- If the number of stones is divisible by 4, then the player will lose.
- If the number of stones is not divisible by 4, then the player will win.
- Return the result.
Code:
public class Solution {
public boolean canWinNim(int n) {
return n % 4 != 0;
}
}
Time Complexity:
O(1)
Space Complexity:
O(1)
Top comments (1)
If you enjoy strategy games like the Nim Game, you might also like jeeto 92 game. It’s a popular Pakistani gaming app offering a mix of traditional and modern games, including Teen Patti, Dragon Tiger, Mines, Zoo Roulette, and more. The app isn’t just for fun, players can earn real cash, win jackpots, and enjoy bonus offers while playing. It’s user-friendly, supports Urdu, and accepts local payment methods like JazzCash and EasyPaisa, making it accessible for everyone in Pakistan. Playing such games can help you understand strategies, improve decision-making skills, and experience interactive gameplay in a fun environment.