AT_agc056_e [AGC056E] Cheese

题目描述

有一个长度为 $N$ 的圆周。在圆周上的某个固定点,从该点顺时针前进距离 $x$ 的位置,称为坐标 $x$ 的点。 对于每个整数 $i$($0 \leq i \leq N-1$),在坐标 $i+0.5$ 处有一只老鼠。 すぬけ君现在要进行 $N-1$ 次扔奶酪的操作。具体来说,以下操作会重复 $N-1$ 次: - 随机选择一个整数 $y$($0 \leq y \leq N-1$)。其中,选择 $y=i$ 的概率为 $A_i\%$。每次选择都是独立的。 - 然后,从坐标 $y$ 处扔出奶酪。奶酪会沿着圆周顺时针移动。当奶酪经过有老鼠的位置时,会发生以下情况: - 如果该老鼠之前没有吃过奶酪: - 以 $1/2$ 的概率吃掉奶酪,被吃掉的奶酪就会消失。 - 以 $1/2$ 的概率什么都不发生。 - 如果该老鼠之前已经吃过奶酪: - 什么都不发生。 - 奶酪会一直沿着圆周移动,直到被某只老鼠吃掉为止。 经过 $N-1$ 次扔奶酪后,恰好只剩下 $1$ 只老鼠没有吃过奶酪。对于每个 $k=0,1,\cdots,N-1$,请计算坐标 $k+0.5$ 处的老鼠最终没有吃到奶酪的概率,并对 $998244353$ 取模。 概率 $\bmod\ 998244353$ 的定义:可以证明,所求概率一定是有理数。此外,在本题的约束下,将其表示为最简分数 $\frac{P}{Q}$ 时,$Q \not\equiv 0 \pmod{998244353}$ 也成立。因此,存在唯一的整数 $R$ 满足 $R \times Q \equiv P \pmod{998244353},\ 0 \leq R < 998244353$。请输出这个 $R$。

输入格式

输入为以下格式,从标准输入读取: > $N$ $A_0$ $A_1$ $\cdots$ $A_{N-1}$

输出格式

请输出每个 $k=0,1,\cdots,N-1$ 的答案,用空格分隔,输出一行。

说明/提示

### 约束 - $1 \leq N \leq 40$ - $0 \leq A_i$ - $\sum_{0 \leq i \leq N-1} A_i = 100$ - 输入的所有值都是整数 ### 样例解释 1 必然会选择 $y=1$。从这里扔出奶酪时,会发生以下情况: - 以 $1/2$ 的概率,坐标 $1.5$ 的老鼠吃掉奶酪。 - 以 $1/4$ 的概率,坐标 $0.5$ 的老鼠吃掉奶酪。 - 以 $1/8$ 的概率,坐标 $1.5$ 的老鼠吃掉奶酪。 - 以 $1/16$ 的概率,坐标 $0.5$ 的老鼠吃掉奶酪。 - $\vdots$ 最终,这块奶酪被坐标 $0.5, 1.5$ 的老鼠吃掉的概率分别为 $1/3, 2/3$。 因此,最终没有吃到奶酪的概率分别为 $2/3, 1/3$。 由 ChatGPT 4.1 翻译