サルの総数を とする。毎回 階を取り除くので、手番は全部で 回である。最後の手番を担当しないプレイヤーを とする。
の手番では残っている階の数は常に偶数であり、少なくとも 階ある。よって、 は毎回、残っている最下階以外を取り除ける。その階のサルは別の階へ移動するため、 はサルを獲得しない。この戦略なら相手の行動に関係なく 匹を保証できる。これより少なくはできないので最適である。
ゲーム終了時にはすべてのサルがいずれかのプレイヤーに渡る。したがって、最後の手番を担当するプレイヤーが 匹すべてを獲得する。 が奇数なら最後は Ishigami なので答えは 、偶数なら である。 の場合も成り立つ。
入力を読みながら合計すれば、時間計算量は 、追加空間計算量は である。 なので、合計と出力には符号付き ビット整数を用いる。
Solution written by GPT