AT_dp_j Sushi
题目描述
有 $N$ 个盘子。每个盘子编号为 $1, 2, \ldots, N$。最初,对于每个 $i$($1 \leq i \leq N$),第 $i$ 个盘子上有 $a_i$($1 \leq a_i \leq 3$)个寿司。
太郎君会不断重复以下操作,直到所有寿司都被吃完:
- 掷一个等概率出现 $1, 2, \ldots, N$ 的骰子,掷出的点数为 $i$。如果第 $i$ 个盘子上还有寿司,则吃掉一个寿司;如果没有寿司,则什么也不做。
请你求出吃完所有寿司所需操作次数的期望值。
输入格式
输入从标准输入按以下格式给出。
> $N$ $a_1$ $a_2$ $\ldots$ $a_N$
输出格式
输出吃完所有寿司所需操作次数的期望值。如果相对误差不超过 $10^{-9}$,则视为正确。
说明/提示
### 限制条件
- 输入均为整数。
- $1 \leq N \leq 300$
- $1 \leq a_i \leq 3$
### 样例解释 1
吃掉第一个寿司所需操作次数的期望为 $1$。之后,吃掉第二个寿司所需操作次数的期望为 $1.5$。再之后,吃掉第三个寿司所需操作次数的期望为 $3$。因此,总的操作次数期望为 $1 + 1.5 + 3 = 5.5$。
### 样例解释 2
例如,输出 `3.00`、`3.000000003`、`2.999999997` 等也可以被判定为正确。
由 ChatGPT 4.1 翻译