#P6517. 「雅礼集训 2018 Day11」字符串

「雅礼集训 2018 Day11」字符串

题目描述

有 NN 个字符串,每个字符串有一个权值 viv_i。随后给出 MM 次询问,每次对一个区间进行检测。令最长的字符串长度为 LL,那么会给出 g1,...,gLg_1, ..., g_L 表示每个长度的字符串的「识别值」。

对若干个字符串构成的集合 PP 进行测试的过程如下:

对字符串 SS 定义 f(S)f(S) 表示 SS 在 PP 中以其为前缀出现的串的权值和。 那么如果 SS 在 PP 中作为前缀出现过,并且 Bf(S)+A×len(S)≥CBf(S) + A\times {\rm len}(S) \geq C,那么则将 glen(S)g_{{\rm len}(S)} 加入集合 GG。

最后随机选择一个区间 [x,y](1≤x≤y≤L)[x, y](1 \leq x \leq y \leq L),如果 [x,y]⋂G≠∅[x, y] \bigcap G \neq \emptyset,那么测试成功,否则测试失败。输出测试成功的概率并用最简分数表示。

特别地,整数 kk 表示为 k/1k / 1。

输入格式

第一行四个数 N,A,B,CN, A, B, C。

接下来一行 NN 个数 v1,...,vNv_1, ..., v_N。

接下来 NN 行表示 NN 个字符串。

接下来一行 LL 个数表示 g1,...,gLg_{1}, ... ,g_L,保证 g1,...,gLg_1, ..., g_L 是一个 11 至 LL 的排列。

接下来一行一个数 MM。

接下来 MM 行,每行两个数 l,rl, r,表示对第 ll 到第 rr 个字符串进行测试。

输出格式

MM 个数表示答案。

5 2 3 15
1 2 3 2 0
aba
aa
abb
aaa
bbbb
1 3 2 4
6
1 4
1 3
2 3
2 4
5 5
3 5
9/10
9/10
7/10
9/10
0/1
7/10

数据范围与提示

测试点编号 N,M≤N, M \leq ∑∣si∣≤\sum\left\vert s_i\right\vert \leq si≤s_i \leq
1 1010 3030
2 100100 300300
3 10001000 30003000
4 1000010000 3000030000 1010
5 10510^5 3×1053\times 10^5
6 1000010000 3000030000
7 2000020000 5000050000
8 3000030000 7000070000
9 5000050000 100000100000
10 10510^5 3×1053\times 10^5

对于 100%100 \% 的数据, 0≤vi,A,B,C≤1090 \leq v_i, A, B, C \leq 10^9。