#P13317. [2025年队测]旅程

    ID: 12501 传统题 2000ms 1024MiB 尝试: 1 已通过: 1 难度: 7 上传者: 标签>CF2300字符串字典树数学数论贪心

[2025年队测]旅程

题目描述

给出 nn 个字符串,第 ii 个字符串为 sis_i

定义函数 f(i,j)f(i,j) 的计算方式如下:

  • 只考虑前 ii 个给出的字符串。

  • 将字符串划分出若干组,每组有恰好 jj 个字符串。

  • 一组的值为这组所有字符串的最长公共前缀 (lcp) 的长度,一个划分方案的值为所有组的值的和。

  • f(i,j)f(i,j) 为最大的划分方案的值。

对于 1in1\leq i\leq n,求出 j=1i(f(i,j)×j)\bigoplus_{j=1}^{i}(f(i,j)\times j)\bigoplus 表示整数二进制异或运算。

本题采用子任务捆绑测试。

输入格式

第一行一个整数 taskidtaskid ,表示子任务编号。 taskid=0taskid=0 表示样例。

接下来一行一个整数 nn,表示字符串的数量。

接下来 nn 行,每行一个字符串,表示 sis_i

输出格式

输出 nn 行,每行一个整数,第 ii 行输出的整数表示 j=1i(f(i,j)×j)\bigoplus_{j=1}^{i}(f(i,j)\times j)

样例

样例输入 1

0
5
aa
ab
ab
ac
d

样例输出 1

2
6
1
9
8

其余样例见下发文件。

  • ex_journey2 与子任务 11 的限制一致,

  • ex_journey3 与子任务 44 的限制一致,

  • ex_journey4 与子任务 55 的限制一致,

时空限制与数据范围

2s, 1024MB

S=i=1nsiS=\sum_{i=1}^{n}|s_i|

对于所有的数据:

  • n5×105,S106n\leq 5\times 10^{5}, S\leq 10^{6}
子任务编号 nn\leq SS\leq 特殊性质 分值
11 100100 10001000 5
22 50005000 5000050000 15
33 5×1055\times 10^{5} 5×1055\times 10^{5} A 10
44 10510^{5} B 15
55 2×1052\times 10^{5} 20
66 5×1055\times 10^{5} 10610^{6} 35

特殊性质 A: si=s_i= a

特殊性质 B: si5|s_i|\leq 5