atcoder#ARC156B. [ARC156B] Mex on Blackboard
[ARC156B] Mex on Blackboard
题目描述
有限個の非負整数からなる多重集合 にたいして、 を、 に含まれない最小の非負整数と定義します。例えば、$ \mathrm{mex}(\lbrace\ 0,0,\ 1,3\rbrace\ )\ =\ 2,\ \mathrm{mex}(\lbrace\ 1\ \rbrace)\ =\ 0,\ \mathrm{mex}(\lbrace\ \rbrace)\ =\ 0 $ です。
黒板に 個の非負整数が書かれており、 番目の非負整数は です。
あなたは、以下の操作をちょうど 回行います。
- 黒板に書かれている非負整数を 個以上選ぶ。選んだ非負整数からなる多重集合を として、 を黒板に 個書き込む。
最終的に黒板に書かれている非負整数の多重集合としてありうるものの個数を で割ったあまりを求めてください。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
答えを出力せよ。
题目大意
你有一个大小为 的多重集 。
你需要执行 次操作,每次选取 ,然后在 中插入 ,表示 内最小没有出现过的自然数。
问最终 有多少种可能的结果。答案对 取模。
3 1
0 1 3
3
2 1
0 0
2
5 10
3 1 4 1 5
7109
提示
制約
- 入力される数値は全て整数
Sample Explanation 1
操作後に得られる多重集合は、以下の 通りです。 - - - 例えば、 は黒板に書かれている を選び、 として操作をすることで得られます。
Sample Explanation 2
操作後に得られる多重集合は、以下の 通りです。 - - 操作で選ぶ整数は 個でも良いことに注意してください。