強制控除1025。除数ゲーム

タイトル説明

アリスとボブは一緒にゲームをし、交代でゲームをします。アリスは最初にゲームを始めました。当初、黒板には数字のNがありました。各プレイヤーのラウンドで、プレイヤーは次の操作を実行する必要があります
。0<x <NおよびN%x == 0を満たす任意のxを選択します。
黒板の数字NをN-xに置き換えます。

プレイヤーがこれらの操作を実行できない場合、彼らはゲームに負けます。

アリスがゲームに勝った場合にのみTrueを返し、それ以外の場合はFalseを返します。両方のプレーヤーが最高の状態でゲームに参加すると仮定します。

示例 1:

输入:2
输出:true
解释:爱丽丝选择 1,鲍勃无法进行操作。

示例 2:

输入:3
输出:false
解释:爱丽丝选择 1,鲍勃也选择 1,然后爱丽丝无法进行操作。

促す

1 <= N <= 1000

問題解決のアイデア

典型的な数学的思考の問題の場合、コードは1行だけです
。Aが奇数を取得した、NXを1回実行すると、確実にNが偶数になります。現時点では、BはAを取得して奇数を取得するために-1を必要とします。繰り返しますが、ループでは、Bが最初に2を取得します。A
は負けます。アリスが奇数を取得すると、彼女は負けます。偶数を取得すると、-1が勝ちます。

コード

bool divisorGame(int N){
    
    
    return !(N&1);

}

リンク

おすすめ

転載: blog.csdn.net/qq_44722674/article/details/113061180