#P10176. 「OICon-02」Native Faith

    ID: 9475 Type: RemoteJudge 3000ms 1024MiB Tried: 0 Accepted: 0 Difficulty: 7 Uploaded By: Tags>字符串后缀自动机,SAMO2优化分块AC 自动机根号分治

「OICon-02」Native Faith

题目描述

本题字符串下标从 11 开始。

定义两个字符串相加的结果为将这两个字符串首尾拼接形成的新字符串。

令 $f(a,b,c)=\sum\limits_{i=1}^{|a|}\sum\limits_{j=i}^{|a|}\sum\limits_{k=1}^{|b|}\sum\limits_{l=k}^{|b|}[a_{i,i+1,\cdots,j}+b_{k,k+1,\cdots,l} = c]$(a,b,ca,b,c 均为字符串)。

即有多少种方式从 a,ba,b 中分别选出一个非空子串使两个子串的和为 cc

给定 nn 个字符串 s1,s2,s3,,sns_1,s_2,s_3,\cdots,s_n

qq 次询问,每次询问给出三个正整数 l,r,kl,r,k,求 $\sum\limits_{i=l}^r\sum\limits_{j=l}^rf(s_i,s_j,s_k)$。

输入格式

第一行包含两个整数 n,qn,q

下面 nn 行,每行一个只包含小写字母的非空字符串表示 s1,s2,,sns_1,s_2,\cdots,s_n

下面 qq 行,每行三个正整数 l,r,kl,r,k,表示一次询问。

输出格式

对于每个询问,每行输出一个整数表示答案。

3 3
a
aa
aaa
1 2 3
2 3 3
1 3 3
6
30
36
10 10
aabb
aba
abbba
abaccaab
abbba
ababababab
aaaaa
bbbbbb
aaba
abbba
1 10 10
1 4 5
3 6 4
2 8 1
1 5 4
2 10 7
2 9 2
4 5 5
5 5 6
8 9 10
241
31
51
105
40
136
460
17
0
0
5 5
a
ba
aba
ababa
abab
1 3 3
1 2 3
2 3 3
4 4 5
3 4 4
12
2
9
11
28

提示

样例解释

对于样例 11,给出部分 ff 函数的值。

  • f(s1,s1,s3)=0f(s_1,s_1,s_3)=0f(s1,s2,s3)=1f(s_1,s_2,s_3)=1f(s1,s3,s3)=2f(s_1,s_3,s_3)=2f(s2,s1,s3)=1f(s_2,s_1,s_3)=1f(s2,s2,s3)=4f(s_2,s_2,s_3)=4f(s2,s3,s3)=7f(s_2,s_3,s_3)=7f(s3,s1,s3)=2f(s_3,s_1,s_3)=2f(s3,s2,s3)=7f(s_3,s_2,s_3)=7f(s3,s3,s3)=12f(s_3,s_3,s_3)=12

数据范围

本题采用捆绑测试。

m=sim=\sum|s_i|

Subtask\text{Subtask} 特殊性质 Score\text{Score}
11 1n,m,q3×1031\le n,m,q\le 3\times 10^3 1717
22 保证每次询问的 kk 各不相同 2323
33 1n,m,q3×1041\le n,m,q\le 3\times 10^4 2727
44 字符串只包含小写字母 a\texttt{a} 1919
55 无特殊限制 1414

对于 100%100\% 的数据:1n,m,q1051\le n,m,q\le 10^51lrn1\le l \le r\le n1kn1\le k\le n,字符串仅包含小写字母。