luogu#P6292. 区间本质不同子串个数

    ID: 10308 远端评测题 1000ms 512MiB 尝试: 3 已通过: 2 难度: 7 上传者: 标签>字符串后缀自动机SAMLink-Cut TreeLCT

区间本质不同子串个数

题目描述

给定一个长度为 nn 的仅包含小写字母的字符串 SSmm 次询问由 SS 的第 LL 到第 RR 个字符组成的字符串包含多少个本质不同的非空子串。

定义两个字符串 a,ba,b 相同当且仅当 a=b|a|=|b| 并且对于 i[1,a]i\in[1,|a|] 都有 ai=bia_i=b_i

输入格式

第一行一个长度为 nn 的字符串 SS

第二行一个整数 mm,表示询问次数。

接下来 mm 行,第 ii 行包含两个整数 li,ril_i,r_i,描述第 ii 次询问。

输出格式

mm 行,每行一个整数,表示第 ii 次询问的答案。

aababc
3
1 2
2 4
3 6
2
5
9

提示

样例 1 解释

  • 第一次询问,字符串为 aa\texttt{aa},包含 a\texttt{a},aa\texttt{aa}22 种本质不同子串。
  • 第二次询问,字符串为 aba\texttt{aba},包含 $\texttt{a},\texttt{b},\texttt{ab},\texttt{ba},\texttt{aba}$, 共 55 种本质不同子串。
  • 第三次询问,字符串为 babc\texttt{babc},包含 a\texttt{a},b\texttt{b},c\texttt{c},ab\texttt{ab},ba\texttt{ba},bc\texttt{bc},bab\texttt{bab},abc\texttt{abc},babc\texttt{babc}99 种本质不同子串。

数据规模与约定

  • 对于 20%20\% 的数据,满足 n3×103n\leq 3\times 10^3m3×103m\leq 3\times 10^3
  • 对于 100%100\% 的数据,满足 1n1051\leq n\leq 10^51m2×1051\leq m\leq 2\times 10^51lirin(i[1,m])1\leq l_i\leq r_i\leq n(i\in[1,m])