AT_arc162_e [ARC162E] Strange Constraints
题目描述
给定一个长度为 $N$ 的数列 $A=(A_1,A_2,\ldots,A_N)$,其中每个 $A_i$ 是 $1$ 到 $N$ 之间的整数。
请你计算满足以下条件的长度为 $N$ 的数列 $B=(B_1,B_2,\ldots,B_N)$ 的个数,其中每个 $B_i$ 是 $1$ 到 $N$ 之间的整数,并将结果对 $998244353$ 取模:
- 对于每个 $i=1,2,\ldots,N$,数列 $B$ 中数字 $i$ 出现的次数不超过 $A_i$。
- 对于每个 $i=1,2,\ldots,N$,数列 $B$ 中数字 $B_i$ 出现的次数不超过 $A_i$。
输入格式
输入以如下格式从标准输入读入:
> $N$ $A_1$ $A_2$ $\ldots$ $A_N$
输出格式
请输出答案。
说明/提示
## 限制条件
- $1\leq N\leq 500$
- $1\leq A_i\leq N$
- 输入的所有数均为整数
## 样例解释 1
满足条件的数列共有 $10$ 个:
- $(1,2,2)$
- $(1,2,3)$
- $(1,3,2)$
- $(1,3,3)$
- $(2,1,3)$
- $(2,3,1)$
- $(2,3,3)$
- $(3,1,2)$
- $(3,2,1)$
- $(3,2,2)$
## 样例解释 2
满足条件的数列是所有由 $1$ 到 $4$ 组成的长度为 $4$ 的数列,共有 $4^4=256$ 个。
## 样例解释 3
满足条件的数列是将 $(1,2,3,4,5)$ 全排列得到的所有数列,共有 $5!=120$ 个。
## 样例解释 4
请输出个数对 $998244353$ 取模的结果。
由 ChatGPT 4.1 翻译