atcoder#ARC110D. [ARC110D] Binomial Coefficient is Fun

[ARC110D] Binomial Coefficient is Fun

题目描述

長さが N N の非負整数列 A A があります。

長さが N N で、和が M M 以下である任意の非負整数列 B B について、 i = 1 N (BiAi) \prod\ _{i\ =\ 1}\ ^N\ \dbinom{B_i}{A_i} の値を計算し、その総和を 109 + 7 10^9\ +\ 7 で割った余りを出力してください。

ここで (BiAi) \dbinom{B_i}{A_i} は、Bi B_i 個のものの中から Ai A_i 個のものを選ぶ場合の数(二項係数)であり、Bi < Ai B_i\ <\ A_i のときは 0 0 です。

输入格式

入力は以下の形式で標準入力から与えられる。

N N M M A1 A_1 A2 A_2 \ldots AN A_N

输出格式

 i = 1 N (BiAi) \prod\ _{i\ =\ 1}\ ^N\ \dbinom{B_i}{A_i} の総和を 109 + 7 10^9\ +\ 7 で割った余りを出力せよ。

题目大意

题目描述

我们有一个包含 NN 个非负整数的序列 AA

对于所有长度为 NN 且和不超过 MM 的非负整数序列 BB,求 i=1N(BiAi)\prod_{i = 1}^N {B_i \choose A_i} 之和, 对 (109+7)(10^9 + 7) 取模。

数据范围

  • 1N20001 \le N \le 2000
  • 1M1091 \le M \le 10^9
  • 0Ai20000 \le A_i \le 2000

输入格式

第一行输入两个整 N,MN, M,第二行 NN 个整数,表示序列 AA

输出格式

一行,表示答案对 (109+7)(10^9 + 7) 取模的值。

样例解释1

有四个序列 BB 满足 i=1N(BiAi)\prod_{i=1}^N {B_i \choose A_i} 至少为 11

  • $B = \{1, 2, 1\}, \prod_{i = 1}^N{B_i \choose A_i} = {1 \choose 1} \times {2 \choose 2} \times {1 \choose 1} = 1$;
  • $B = \{2, 2, 1\}, \prod_{i = 1}^N{B_i \choose A_i} = {2 \choose 1} \times {2 \choose 2} \times {1 \choose 1} = 2$;
  • $B = \{1, 3, 1\}, \prod_{i = 1}^N{B_i \choose A_i} = {1 \choose 1} \times {3 \choose 2} \times {1 \choose 1} = 3$;
  • $B = \{1, 2, 2\}, \prod_{i = 1}^N{B_i \choose A_i} = {1 \choose 1} \times {2 \choose 2} \times {2 \choose 1} = 2$.

它们的答案之和为 1+2+3+2=81+2+3+2=8

Translated by @nr0728.\text{\tiny{Translated by @nr0728.}}
3 5
1 2 1
8
10 998244353
31 41 59 26 53 58 97 93 23 84
642612171

提示

制約

  • 入力は全て整数
  • 1  N  2000 1\ \leq\ N\ \leq\ 2000
  • 1  M  109 1\ \leq\ M\ \leq\ 10^9
  • 0  Ai  2000 0\ \leq\ A_i\ \leq\ 2000

Sample Explanation 1

 i = 1 N (BiAi) \prod\ _{i\ =\ 1}\ ^N\ \dbinom{B_i}{A_i} 1 1 以上となるような数列 B B の定め方は、以下の 4 4 通りです。 - B = 1, 2, 1 B\ =\ 1,\ 2,\ 1 とする。このとき $ \prod\ _{i\ =\ 1}\ ^N\ \dbinom{B_i}{A_i}\ =\ \dbinom{1}{1}\ \times\ \dbinom{2}{2}\ \times\ \dbinom{1}{1}\ =\ 1 $ である - B = 2, 2, 1 B\ =\ 2,\ 2,\ 1 とする。このとき $ \prod\ _{i\ =\ 1}\ ^N\ \dbinom{B_i}{A_i}\ =\ \dbinom{2}{1}\ \times\ \dbinom{2}{2}\ \times\ \dbinom{1}{1}\ =\ 2 $ である - B = 1, 3, 1 B\ =\ 1,\ 3,\ 1 とする。このとき $ \prod\ _{i\ =\ 1}\ ^N\ \dbinom{B_i}{A_i}\ =\ \dbinom{1}{1}\ \times\ \dbinom{3}{2}\ \times\ \dbinom{1}{1}\ =\ 3 $ である - B = 1, 2, 2 B\ =\ 1,\ 2,\ 2 とする。このとき $ \prod\ _{i\ =\ 1}\ ^N\ \dbinom{B_i}{A_i}\ =\ \dbinom{1}{1}\ \times\ \dbinom{2}{2}\ \times\ \dbinom{2}{1}\ =\ 2 $ である よって答えは 1 + 2 + 3 + 2 = 8 1\ +\ 2\ +\ 3\ +\ 2\ =\ 8 です。