Alice and Bob take turns playing a game, with Alice starting first.
Initially, there is a number N on the chalkboard. On each player's turn, that player makes a move consisting of:
- Choosing any
xwith0 < x < NandN % x == 0. - Replacing the number
Non the chalkboard withN - x.
Also, if a player cannot make a move, they lose the game.
Return True if and only if Alice wins the game, assuming both players play optimally.
Example:
Input: N=10
Output: trueApproach
Java
public class DivisorGame {public static void main(String[] args) {int n = 10;System.out.println(divisorGame(n));}static boolean divisorGame(int N) {if (N % 2 == 0)return true;return false;}}
C++
#include <bits/stdc++.h>using namespace std;bool divisorGame(int N){if(N%2==0)return true;return false;}int main(){int n=10;if(divisorGame(n))cout<<"true";elsecout<<"false";return 0;}
No comments:
Post a Comment