#AG0905002. 最小循环节

最小循环节

题目描述

本题中,我们规定:对于一个长度为 nn 的字符串 ss,如果存在一个整数 mm,满足:

  • 1m<n1 \le m \lt n
  • m  nm\ |\ n(即 nn 能被 mm 整除);
  • ss 可以看成由 nm\frac{n}{m} 个长度为 mm 的相同字符串拼接而成。

则,我们称 mm 是字符串 ss 的一个循环节。

求:字符串的最小循环节的长度。

输入格式

第一行,一个整数 n(1n106)n(1 \le n \le 10^6)

第二行,一个长度为 nn 的字符串 ssss 仅由小写英文字母组成。

输出格式

输出一个整数,表示字符串 ss 的最小循环节的长度。如果字符串 ss 不存在任何循环节,输出 1-1

样例

12
abababababab
2
12
abaabaabaaba
3
5
abcab
-1

说明/提示

数据规模与约定

  • 对于 30%30\% 的数据,n100n \le 100
  • 对于 60%60\% 的数据,n10000n \le 10000
  • 对于 100%100\% 的数据,1n1061 \le n \le 10^6,字符串 ss 仅由小写英文字母组成。