AT_abc358_e [ABC358E] Alphabet Tiles
Description
[problemUrl]: https://atcoder.jp/contests/abc358/tasks/abc358_e
> AtCoder Land では、アルファベットの書かれたタイルが販売されています。高橋君は、タイルを一列に並べてネームプレートを作ろうと考えました。
長さ $ 1 $ 以上 $ K $ 以下の英大文字からなる文字列であって、以下の条件を満たすものの個数を $ 998244353 $ で割った余りを求めてください。
- $ 1\ \leq\ i\ \leq\ 26 $ を満たす任意の整数 $ i $ について以下が成立する。
- 辞書順で $ i $ 番目の英大文字を $ a_i $ とおく。例えば、$ a_1\ = $ `A`, $ a_5\ = $ `E`, $ a_{26}\ = $ `Z` である。
- 文字列の中に含まれている $ a_i $ の個数は $ 0 $ 個以上 $ C_i $ 個以下である。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ K $ $ C_1 $ $ C_2 $ $ \ldots $ $ C_{26} $
Output Format
答えを出力せよ。
Explanation/Hint
### 制約
- $ 1\ \leq\ K\ \leq\ 1000 $
- $ 0\ \leq\ C_i\ \leq\ 1000 $
- 入力される値はすべて整数
### Sample Explanation 1
`A`, `B`, `C`, `AA`, `AB`, `AC`, `BA`, `BC`, `CA`, `CB` の $ 10 $ 個の文字列が条件を満たします。