题目描述
原题来自:POI 2012 给出一个由小写英文字母组成的字符串 $S$,再给出 $q$ 个询问,要求回答 $S$ 某个子串的最短循环节。 如果字符串 $B$ 是字符串 $A$ 的循环节,那么 $A$ 可以由 $B$ 重复若干次得到。
输入格式
第一行一个正整数 $n$,表示 $S$ 的长度。 第二行 $n$ 个小写英文字母,表示字符串 $S$ 。 第三行一个正整数 $q$ ,表示询问个数。 下面 $q$ 行每行两个正整数 $a,b$ ,表示询问字符串 $S[a..b]$ 的最短循环节长度。
输出格式
依次输出 $q$ 行正整数,第 $i$ 行的正整数对应第 $i$ 个询问的答案。
样例
样例输入
样例输入
8
aaabcabc
3
1 3
3 8
4 8
样例输出
样例输出
1
3
5
数据范围与提示
$1 \le a \le b \le n \le {5\times 10^5} ,$ $q \le {2\times 10 ^ 6}$。