You Are Given Some Strings...
题目描述
给你一个字符串 t 和 n 个字符串 s1,s2,⋯,sn。所有字符串均由小写英文字母组成。
令 f(t,s) 表示字符串 s 作为子串在 t 中的出现次数。例如,f(aaabacaa,aa)=3,f(ababa,aba)=2。
计算 $\sum\limits_{i=1}^n\sum\limits_{j=1}^n f(t,s_i+s_j)$。si+sj 表示 sj 拼接在 si 之后形成的字符串。
输入格式
第一行一个字符串 t(1≤∣t∣≤2×105)。
第二行一个整数 n(1≤n≤2×105)。
接下来 n 行,每行一个字符串 si(1≤∣si∣≤2×105)。
保证 i=1∑n∣si∣≤2×105。
输出格式
输出一行一个整数表示答案。
样例输入 1
aaabacaa
2
a
aa
样例输出 1
5
样例输入 2
aaabacaa
4
a
a
a
b
样例输出 2
33
数据范围
- 1≤∣t∣≤2×105。
- 1≤n≤2×105。
- 1≤∣si∣≤2×105。
- ∑i=1n∣si∣≤2×105。
- 所有字符串只含小写英文字母。