序列的故事
时间限制:30s 空间限制:128MB
题目描述
给出一个由小写英文字母组成的字符串S,再给出q个询问,要求回答S某个子串的最短循环节。
循环节的定义:如果字符串B是字符串A的循环节,那么A可以由B重复若干次得到。
输入格式
第一行一个正整数n (n<=500,000),表示S的长度。
第二行n个小写英文字母,表示字符串S。
第三行一个正整数q (q<=2,000,000),表示询问个数。
下面q行每行两个正整数a,b (1<=a<=b<=n),表示询问字符串S[a..b]的最短循环节长度。
输出格式
依次输出q行正整数,第i行的正整数对应第i个询问的答案。
样例输入
8 aaabcabc 3 1 3 3 8 4 8
样例输出
1 3 5 【数据规模和约定】 42%数据满足n<=10000,其中30%数据满足q<=10000< pre="">提示
没有写明提示
题目来源
没有写明来源
=10000,其中30%数据满足q<=10000<>