#ABC285B. 最长非公共前缀

最长非公共前缀

最长非公共前缀

题目描述

给定一个长度为 NN、由小写英文字母组成的字符串 SSSS 的第 xx 个字符 (1xN1 \le x \le N) 记为 SxS_x

对于每个 i=1,2,,N1i=1,2,\dots,N-1,求满足以下所有条件的最大非负整数 ll:

  • l+iNl+i \le N,且
  • 对于所有满足 1kl1 \le k \le l 的整数 kk,都有 SkSk+iS_k \neq S_{k+i}

注意,l=0l=0 总是满足条件。

输入格式

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

NN
SS

输出格式

输出 N1N-1 行。第 xx 行 (1x<N1 \le x \lt N) 输出当 i=xi=x 时答案的整数。

样例

6
abcbac
5
1
2
0
1

在这个输入中,S=S= abcbac。

  • i=1i=1 时,S1S2,S2S3,S_1 \neq S_2, S_2 \neq S_3, \dots,且 S5S6S_5 \neq S_6,所以最大值为 l=5l=5
  • i=2i=2 时,S1S3S_1 \neq S_3,但 S2=S4S_2 = S_4,所以最大值为 l=1l=1
  • i=3i=3 时,S1S4S_1 \neq S_4S2S5S_2 \neq S_5,但 S3=S6S_3 = S_6,所以最大值为 l=2l=2
  • i=4i=4 时,S1=S5S_1 = S_5,所以最大值为 l=0l=0
  • i=5i=5 时,S1S6S_1 \neq S_6,所以最大值为 l=1l=1

数据范围

  • NN 是满足 2N50002 \le N \le 5000 的整数。
  • SS 是由小写英文字母组成的长度为 NN 的字符串。
难度 普及-
通过率
尝试 0
已通过 0
ID
2584
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签