#4643. Random Student ID

0

Random Student ID

Random Student ID

题目描述

Takahashi 小学有 NN 名新学生。对于 i=1,2,…,Ni = 1, 2, \ldots, N,第 ii 名新学生的名字是 SiS_i(由小写英文字母组成的字符串)。 这 NN 个新学生的名字两两不同。 这 NN 名学生将按照名字的字典序升序被分配学号 1,2,3,…,N1, 2, 3, \ldots, N。然而,我们使用的字母顺序不是普通的将 aa 视为最小、zz 视为最大的顺序,而是如下顺序:

首先,Takahashi 校长从长度为 2626 的字符串 abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz 的 26!26! 种排列中,均匀随机地选择一个字符串 PP。 在 PP 中出现得更靠前的小写英文字母被认为更小。

对于每一名 NN 名学生,求被分配到的学号的期望值,对 998244353998244353 取模(参见说明)。

什么是字典序? 若字符串 $S = S_1S_2\ldots S_{|S|}$,则当下列 1. 或 2. 成立时,称字符串 $S$ 在字典序上小于字符串 $T = T_1T_2\ldots T_{|T|}$。 这里,$|S|$ 和 $|T|$ 分别表示 $S$ 和 $T$ 的长度。
    $|S| \lt |T|$ 且 $S_1S_2\ldots S_{|S|} = T_1T_2\ldots T_{|S|}$。 存在整数 $1 \leq i \leq \min\lbrace |S|, |T| \rbrace$ 满足以下两条:

    S1S2…Si−1=T1T2…Ti−1S_1S_2\ldots S_{i-1} = T_1T_2\ldots T_{i-1} SiS_i 比 TiT_i 的字符更小。

输入格式

输入来自标准输入,格式如下: NN S1S_1 S2S_2 ⋮\vdots SNS_N

输出格式

打印 NN 行。 对于每个 i=1,2,…,Ni = 1, 2, \ldots, N,第 ii 行应当包含第 ii 名学生被分配学号的期望值模 998244353998244353。

3
a
aa
ab
1
499122179
499122179
3
a
aa
aaa
1
2
3

提示

2≤N2 \leq N NN 是整数。 SiS_i 是长度至少为 11 的由小写英文字母组成的字符串。 给定字符串长度之和至多为 5×1055 \times 10^5。 i≠j⇒Si≠Sji \neq j \Rightarrow S_i \neq S_j我们可以证明所求的期望值总是有理数。此外,在本题的约束下,当该值表示为互质整数 PP 和 QQ 的 PQ\frac{P}{Q} 时,我们可以证明存在唯一整数 RR 使得 R×Q≡P(mod998244353)R \times Q \equiv P\pmod{998244353} 且 0≤R<9982443530 \leq R \lt 998244353。求出这样的 RR。学生 1 被分配学号的期望值是 11;学生 2 和 3 被分配学号的期望值是 52\frac{5}{2}。 注意答案应当对 998244353998244353 取模。 例如,学生 2 和 3 的所求期望值为 52\frac{5}{2}, 且 2×499122179≡5(mod998244353)2 \times 499122179 \equiv 5\pmod{998244353}, 因此应当输出 499122179499122179。

标签: AtCoder|abc268G

来源

AtCoder|abc268G