题目背景
::::info[点击以展开小剧场]
诶?为啥这场比赛还有我的事啊喂!
因为……这个系列绕不开你吧。
等等,你怎么也便当了(゚Д゚≡゚д゚)!?
剧情是这么写的(摊手)。
$\text{\textcolor{66CCFF}{虽然但是,你们没有发现这个 PV 不太对劲吗("▔□▔)/}}$
好像是有点……
可能我们需要一个更正常的 PV……
$\text{\textcolor{EE0000}{那样的 PV 应该能降低在公共场合唱这首歌的风险(?)}}$
::::
题目描述
少女 1 走进一个庭院。
庭院中有 n 个花灵。每个花灵都会去尝试接触 1。在一切正常的情况下,编号为 i 的花灵有 ai 的概率接触成功。花灵们会以某种顺序去依次尝试接触 1,但一个花灵只会尝试接触一次。
不幸的是,由于某种原因,花灵接触人类后会化为灰烬。当 1 意识到这点后,她会尝试减少接触剩下的花灵的可能性。具体地,有一个小于 1 的参数 k,当编号为 i 的花灵尝试接触 1 时,若之前已经有 x 个花灵成功接触 1 并化为灰烬,那么该花灵成功接触的概率实际上为 ai×kx。
这时,小 L 走了过来,他想知道对于每个花灵,如果给定一个恰当的花灵接触顺序中,使该花灵成功接触 1 并化为灰烬的概率最小,这个最小概率将是多少。你需要将这些概率对 998244353 取模。
如果你不知道什么是有理数取模,对于每个你需要输出的概率,设为 qp,一定能找到一个数 r 满足 0≤r<998244353,使得 qr≡p(mod998244353) ,请输出 r 。
简化题意: 有 n 个事件,编号为 i 的事件有一个参数 ai。事件可以以任意顺序依次发生。对于一种事件依次发生的顺序,当轮到一个事件发生时,若之前已有 x 个事件成功发生,则该事件此时成功发生的概率为 ai×kx。对于每个事件,求出在所有可能的事件发生顺序中,该事件成功发生的最小概率对 998244353 取模的结果,注意最小化的是概率而不是概率取模后的结果。
输入格式
输入共两行。
第一行输入两个整数,表示 n 与 K。
接下来一行输入 n 个整数,第 i 个数表示 Ai。
其中 K 表示上文中的 k=100K,Ai 表示上文中的 ai=100Ai。
输出格式
输出共 n 行。
第 i 行表示在所有花灵的尝试接触顺序中,第 i 个花灵成功接触 1 并化为灰烬的最小概率,依题意对 998244353 取模。
3 50
20 40 80
231592690
191662916
71873594
提示
【样例解释】
对于样例组 #1 的第一行输出,一种最优的顺序为 2,3,1(数字表示花灵的编号),可以算得此时编号为 1 的花灵成功接触 1 的概率为 12513。
由于 231592690×125≡13(mod998244353),所以输出 231592690。
可以证明不存在一种花灵尝试接触的顺序,使得此时编号为 1 的花灵成功接触 1 的概率小于 12513。
【数据范围】
对于所有测试点,有:
- 1≤n≤2000;
- 0<Ai≤100;
- 0<K<100;
- 所有输入数据均为整数。
每个测试点的具体数据范围和特殊性质见下表。
::cute-table{tuack}
| 测试点编号 | n≤ | 特殊性质 |
|:-:|:-:|:-:|
| 1 | 9 | 无 |
| 2∼4 | 400 | ^ |
| 5∼6 | 2000 | Ai 均相等 |
| 7∼10 | ^ | 无 |