UOJ Logo

NOI.AC

1S 512MB

#1331. A Horrible Poem

统计

题目描述

原题来自: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}$。