在一个神秘的密林里,有一种迷人的花,它的花瓣上印着各种各样的字母。人们称它为“字母花”。这种花一年只开花一次,每次开花的时候都会吸引大量的蜜蜂前来采蜜。蜜蜂们会在花瓣上留下足迹,这些足迹形成了一个字符串 S 。
现在你手里拿着一段 S ,你想知道,对于每个时间间隔 i ,最多有多少只蜜蜂可以在同一段花瓣上采蜜,而不会碰到彼此。
具体地,你需要对于每个 i = 1,2,...,N−1 找到最大的非负整数l,满足以下所有条件:
1、{l + i \leq N}
2、对于所有整数 k {(1 \leq k \leq l)},都满足{S_k} ≠ S{k + i} 。
请注意,{l = 0} 始终满足条件。
请你编写一个程序,计算出对于每个 i ,最多有多少只蜜蜂可以在同一段花瓣上采蜜。
输入两行,第一行是字符串的长度,第二行是该字符串 S。
输出 {N-1} 行,第 x 行 {1 \leq x \leq N} 输出一个整数表示 {i = x} 时的答案。
6 abcbac
5 1 2 0 1
【样例解释】
在这个输入中,{S=abcbac}。
当 {i = 1} 时,我们有 {S_1 ≠ S_2}, {S_2 ≠ S_3},…, {S_5 ≠ S_6},因此最大值为 {l=5}。
当 {i = 2} 时,我们有 {S_1 ≠ S_3},但是 {S_2 ≠ S_4},因此最大值为 {l=1}。
当 {i = 3} 时,我们有 {S_1 ≠ S_4},{S_2 ≠ S_5 },但是 {S_3 = S_6},因此最大值为 {l = 2}。
当 {i = 4} 时,我们有 {S_1 = S_5},因此最大值为 {l=0}。
当 {i = 5} 时,我们有 {S_1 ≠ S_6},因此最大值为 {l = 1}。
【数据范围】
N 是一个整数,使得 {2 \leq N \leq 10^5} 。
S 是一个长度为 N 的字符串,由小写英文字母组成。