C - Nim is Time-consuming
Editorial
Time Limit: 4 sec / Memory Limit: 1024 MB
配点 : 点
問題文
UT 君と PC 君は Nim というゲームで遊んでいます。 個の正整数 に対し、 とは次のゲームのことを指します。
- いくつかの石からなる 個の山があり、はじめ 番目の山には 個の石がある。UT 君から始めて、 人は交互に以下の操作を 回ずつ繰り返す。
- (操作) 石が 個以上残っている山を つ選ぶ。その山から石を 個以上取り除く。
- 石が全て取り除かれた時点でゲームを終了し、最後に操作を行ったプレイヤーを勝ち、もう一方のプレイヤーを負けとする。
- ゲーム開始時点からゲーム終了時点までに 人が行った操作の回数の合計を としたとき、勝ったプレイヤーが 点、負けたプレイヤーが 点を得る。
を満たす長さ の整数列 は 通りありますが、その全てに対して、 人は 回ずつ を遊びます。
それぞれが全てのゲームで獲得する点数の合計を最大化するように行動したとき、これら 回のゲームの操作回数の合計は何回になるでしょうか?答えは非常に大きくなる可能性があるので、 で割った余りを求めてください。
制約
- 入力は全て整数
入力
入力は以下の形式で標準入力から与えられる。
出力
答えを 行に出力せよ。
入力例 1Copy
Copy
2 2
出力例 1Copy
Copy
12
人は以下の つのゲームを行います。
それぞれが最善を尽くした場合、各ゲームの操作回数はそれぞれ 、、、 になります。これらの合計である を出力します。
入力例 2Copy
Copy
4 5
出力例 2Copy
Copy
6748
入力例 3Copy
Copy
1 222
出力例 3Copy
Copy
222
入力例 4Copy
Copy
987654321 456
出力例 4Copy
Copy
897555885
答えの値を で割った余りを出力してください。