#abc287e. [abc287_e]Karuta

[abc287_e]Karuta

题目描述

给定 NN 个由小写英文字母组成的字符串,设第 ii 个字符串为 SiS_i (i=1,2,ldots,Ni = 1, 2, \\ldots, N)。

对于两个字符串 xxyy,我们定义 mathrmLCP(x,y)\\mathrm{LCP}(x, y) 为满足以下条件的最大整数 nn

  • xxyy 的长度都至少为 nn
  • 对于 11nn 之间的所有整数 iixxyy 的第 ii 个字符相等。

对于所有 i=1,2,ldots,Ni = 1, 2, \\ldots, N,求以下值:

  • $\\displaystyle \\max_{i \\neq j} \\mathrm{LCP}(S_i, S_j)$

约束条件

  • 2leqNleq5times1052 \\leq N \\leq 5 \\times 10^5
  • NN 是一个整数。
  • SiS_i 是由小写英文字母组成的长度至少为 11 的字符串 (i=1,2,ldots,Ni = 1, 2, \\ldots, N)。
  • SiS_i 的长度之和不超过 5times1055 \\times 10^5

输入

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

NN S1S_1 S2S_2 vdots\\vdots SNS_N

输出

输出 NN 行。第 ii 行应包含 $\\displaystyle \\max_{i \\neq j} \\mathrm{LCP}(S_i, S_j)$。


示例输入 1

3
abc
abb
aac

示例输出 1

2
2
1

mathrmLCP(S1,S2)=2\\mathrm{LCP}(S_1, S_2) = 2mathrmLCP(S1,S3)=1\\mathrm{LCP}(S_1, S_3) = 1mathrmLCP(S2,S3)=1\\mathrm{LCP}(S_2, S_3) = 1


示例输入 2

11
abracadabra
bracadabra
racadabra
acadabra
cadabra
adabra
dabra
abra
bra
ra
a

示例输出 2

4
3
2
1
0
1
0
4
3
2
1