P6059 [加油武汉] 居家隔离
题目背景
为了防止感染,大家要自觉做到居家隔离,少外出少与外人接触。
题目描述
居家久了,你需要给自己找点娱乐。于是你看到这么一个游戏:
给定一个 $n$ 元集合 $ \{a_1,a_2,a_3....a_n \}$,元素各不相同。
游戏总共会进行 $n$ 轮,每轮系统会从集合中随机挑出一个元素,记作 $x$。你可以有如下两种选择:
1. 取走 $x$,那么 $x$ 将会是你的最终得分。
2. 舍弃 $x$,此时 $x$ 将会永久的从这个集合中删去,并且进入下一轮。
请注意,若是集合中仅剩唯一一个元素时,该元素无法被舍弃。
由于你很懒,所以你指定了一个很咸鱼的策略:
对于前 $k$ 轮,将得到的数全部舍弃,并且记录下得到的数中的最大值,记作 $y$。
在第 $k$ 轮之后,执行如下策略:
若是取得的 $x > y$,则直接取走 $x$。反之不断舍弃,直到找到了一个满足要求的 $x$ 或是仅剩一个元素。
现在你希望知道,对于 $1$ 到 $n-1$ 的每一个 $k$,你期望下的得分是多少。
所有数请对 $998244353$ 取模。
输入格式
第一行一个整数 $n$,表示集合中元素个数。
第二行共 $n$ 个整数,描述集合中的每一个元素。
输出格式
一行,总共 $n-1$ 个数,第 $i$ 个数表示当 $k=i$ 时,期望得分。
设答案化为最简分式后的形式为 $\frac{a}{b}$,其中 $a$ 和 $b$ 互质。输出整数 $x$ 使得 $bx\equiv a \pmod{998244353}$ 且 $0\leq x < 998244353$。可以证明这样的整数 $x$ 是唯一的。
说明/提示
**样例解释**
答案输出的四个数应该分别是 $\frac{39}{10}, \frac{19}{5} ,\frac{69}{20}, 3$,但在模意义下除以一个数相当于乘这个数在模意义下的逆元,因此输出为这些数。举例来说 $\frac{39}{10}\equiv 39\cdot 10^{-1}\equiv 39\cdot 299473306\equiv 698771051\pmod{998244353}$。
提示:如果你不知道如何对一个分数取余,请点这里:
- 对于 $40\%$ 的数据,满足 $2 \leq n \leq 10$;
- 对于 $60\%$ 的数据,满足集合为 $[1,n]$ 中所有正整数;
- 对于 $100\%$ 的数据,满足 $2 \leq n \leq 1000$,集合中所有数字不超过 $10000$。