#abc287e. [abc287_e]Karuta

[abc287_e]Karuta

問題文

英小文字からなる文字列が NN 個与えられます。i,(i=1,2,dots,N)i \\, (i = 1, 2, \\dots, N) 番目のものを SiS_i と表します。

二つの文字列 x,yx, y に対し、以下の条件を全て満たす最大の整数 nnmathrmLCP(x,y)\\mathrm{LCP}(x, y) と表します。

  • x,yx, y の長さはいずれも nn 以上
  • 11 以上 nn 以下の全ての整数 ii に対し、xxii 文字目と yyii 文字目が等しい

全ての i=1,2,dots,Ni = 1, 2, \\dots, 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,dots,N)(i = 1, 2, \\dots, N)
  • SiS_i の長さの総和は 5times1055 \\times 10^5 以下

入力

入力は以下の形式で標準入力から与えられる。

NN S1S_1 S2S_2 vdots\\vdots SNS_N

出力

NN 行出力せよ。i,(i=1,2,dots,N)i \\, (i = 1, 2, \\dots, N) 行目には、$\\displaystyle \\max_{i \\neq j} \\mathrm{LCP}(S_i, S_j)$ を出力せよ。


入力例 1

3
abc
abb
aac

出力例 1

2
2
1

$\\mathrm{LCP}(S_1, S_2) = 2, \\mathrm{LCP}(S_1, S_3) = 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