Logo Universal Online Judge

UOJ

时间限制:4 s 空间限制:1024 MB
Statistics

[NOI2018] 你的名字

题目背景

实力强大的小 A 被选为了 ION2018 的出题人,现在他需要解决题目的命名问题。

题目描述

小 A 被选为了 ION2018 的出题人,他精心准备了一道质量十分高的题目,且已经把除了题目命名以外的工作都做好了。

由于 ION 已经举办了很多届,所以在题目命名上也是有规定的,ION 命题手册规定:每年由命题委员会规定一个小写字母字符串,我们称之为那一年的命名串,要求每道题的名字必须是那一年的命名串的一个非空连续子串,且不能和前一年的任何一道题目的名字相同。

由于一些特殊的原因,小 A 不知道 ION2017 每道题的名字,但是他通过一些特殊手段得到了 ION2017 的命名串,现在小 A 有 $Q$ 次询问:每次给定 ION2017 的命名串和 ION2018 的命名串,求有几种题目的命名,使得这个名字一定满足命题委员会的规定,即是 ION2018 的命名串的一个非空连续子串且一定不会和 ION2017 的任何一道题目的名字相同。

由于一些特殊原因,所有询问给出的 ION2017 的命名串都是某个串的连续子串,详细可见输入格式。

输入格式

第一行一个字符串 $S$ ,之后询问给出的 ION2017 的命名串都是 $S$ 的连续子串。 第二行一个正整数 $Q$,表示询问次数。 接下来 $Q$ 行,每行有一个字符串 $T$ 和两个正整数$l,r$,表示询问如果 ION2017 的命名串是 $S_{l\ldots r}$,ION2018 的命名串是 $T$ 的话,有几种命名方式一定满足规定。

输出格式

输出 $Q$ 行,第 $i$ 行一个非负整数表示第 $i$ 个询问的答案。

样例 #1

样例输入 #1

scbamgepe
3
smape 2 7
sbape 3 8
sgepe 1 9

样例输出 #1

12
10
4

提示

更多样例

更多样例请在附加文件中下载。

样例 2

见附加文件中的 name2.inname2.ans

数据范围

测试点 $\ S\ \leq$  $Q\leq $  $\sum \ T\ \leq $  其他限制
$1$ $200$ $200$ $40000$ $T\leq 200$
$2$ $1000$ $200$ $40000$ $T\leq 200$
$3$ $1000$ $200$ $40000$ $T\leq 200$
$4$ $1000$ $200$ $5 \times 10^5$
$5$ $1000$ $200$ $5 \times 10^5$
$6$ $5 \times 10^5$ $1$ $5 \times 10^5$
$7$ $5 \times 10^5$ $1$ $5 \times 10^5$
$8$ $10^5$ $10^5$ $2 \times 10^5$
$9$ $10^5$ $10^5$ $2 \times 10^5$ 字符串随机
$10$ $2 \times 10^5$ $10^5$ $4 \times 10^5$
$11$ $2 \times 10^5$ $10^5$ $4 \times 10^5$ 字符串随机
$12$ $3 \times 10^5$ $10^5$ $6 \times 10^5$
$13$ $3 \times 10^5$ $10^5$ $6 \times 10^5$ 字符串随机
$14$ $4 \times 10^5$ $10^5$ $8 \times 10^5$
$15$ $4 \times 10^5$ $10^5$ $8 \times 10^5$ 字符串随机
$16$ $5 \times 10^5$ $10^5$ $10^6$
$17$ $5 \times 10^5$ $10^5$ $10^6$ 字符串随机
$18$ $2 \times 10^5$ $10^5$ $10^6$
$19$ $3 \times 10^5$ $10^5$ $10^6$
$20$ $4 \times 10^5$ $10^5$ $10^6$
$21$ $5 \times 10^5$ $10^5$ $10^6$
$22$ $5 \times 10^5$ $10^5$ $10^6$
$23$ $5 \times 10^5$ $10^5$ $10^6$
$24$ $5 \times 10^5$ $10^5$ $10^6$
$25$ $5 \times 10^5$ $10^5$ $10^6$

对于前 $17$ 个测试点的所有询问有 $l=1,r=|S|$。

对于所有数据,保证 $1\leq l \leq r \leq |S|$,$1\leq |T|\leq 5 \times 10^5$

感谢 @Wen_kr 提供的一组 hack 数据。