#ABC295E. 第 K 个数

第 K 个数

第 K 个数

题目描述

我们有一个长度为 NN 的序列 A=(A1,A2,,AN)A=(A_1,A_2,\dots,A_N),其中每个元素都是 00MM 之间的整数(含两端)。

Snuke 将按顺序执行以下操作 1 和 2。

  1. 对每个满足 Ai=0A_i=0ii,独立地从 11MM 中等概率随机选择一个整数,并用该整数替换 AiA_i
  2. AA 按升序排序。

请输出这两步操作后 AKA_K 的期望值对 998244353998244353 取模的结果。

如何输出对 998244353998244353 取模的数? 可以证明所求期望值总是有理数。 此外,在本问题的约束下,当该值用两个互质的整数 PPQQ 表示为 PQ\frac{P}{Q} 时,可以证明存在唯一的整数 RR,满足 R×QP(mod998244353)R \times Q \equiv P\pmod{998244353}0R<9982443530 \leq R \lt 998244353。请输出这个 RR

输入格式

输入按以下格式从标准输入给出:

NN MM KK
A1A_1 A2A_2 \dots ANA_N

输出格式

输出两步操作后 AKA_K 的期望值对 998244353998244353 取模的结果。

样例

3 5 2
2 0 4
3

在操作 1 中,Snuke 会用 1155 之间的整数替换 A2A_2。设这个整数为 xx

如果 x=1x=122,两步操作后 A2=2A_2=2

如果 x=3x=3,两步操作后 A2=3A_2=3

如果 x=4x=455,两步操作后 A2=4A_2=4

因此 A2A_2 的期望值为 2+2+3+4+45=3\frac{2+2+3+4+4}{5}=3

2 3 1
0 0
221832080

期望值为 149\frac{14}{9}

10 20 7
6 5 0 2 0 0 0 15 0 0
617586310

数据范围

  • 1KN20001\leq K \leq N \leq 2000
  • 1M20001\leq M \leq 2000
  • 0AiM0\leq A_i \leq M
  • 输入中的所有值均为整数。
难度 提高
通过率
尝试 0
已通过 0
ID
2651
类型
传统题
Time Limit
4000ms
Memory Limit
1024MiB
上传者
标签