对于一个 长度为 的字符串 ,将 的 本质不同的所有字串按字典序从小到大 排序。
比如串 ababa,共有 个本质不同的字串,按要求排序后得到:
ababa
a
b
ab
ba
aba
bab
abab
baba
我们定义两个子串 和 的相似程度为 的最大值,其中 满足:
接下来,我们要询问的是,排序后的第 个子串和第 个子串的相似程度是多少。
输入第 行,包含 个整数 。 代表询问组数。
第 行是字符串 。
接下来 行,每行两个整数 和 ()。
输出共 行,每行一个数表示每组询问的答案。如果不存在第 个子串或第 个子串,则输出 。
5 3 ababa 3 5 5 9 8 10
18 16 -1
z
后缀数组+二分+RMQ