#P6728. [COCI2015-2016#5] PODNIZOVI
[COCI2015-2016#5] PODNIZOVI
题目描述
给定一个长度为 的数组 。令 为这个数组所有的非空子序列,且 。
关于字典序:如果两个数组 和 的第一个不相同的位置为 ,且 ;或 是 的严格前缀(即不能相等),则 的字典序小于 。
我们将由 组成的数组的 hash 值定义为:
$$h(s)=(v_1\times B^{p-1}+v_2\times B^{p-2}+\dots +v_{p-1}\times B+v_p) \bmod M $$其中 是给定的整数。
对于给定的整数 ,求 的值。
输入格式
第一行四个整数 。
第二行 个整数 。
输出格式
输出共 行,第 行为 的值。
2 3 1 5
1 2
1
3
2
3 4 2
1
1
0
2
5 6 23 1000
1 2 4 2 3
1
25
25
577
274
578
提示
样例解释
样例
。
$h(s_1) = 1 \bmod 5 = 1, h(s_2) =(1 + 2) \bmod 5 = 3, h(s_3) = 2 \bmod 5 = 2$。
样例
。
$h(s1) = 1 \bmod 3 = 1,h(s_2) = 1 \bmod 3 = 1, h(s_3) = (1 \times 2 + 1) \bmod 3 = 0, h(s_4) = (1 \times 2 + 3) \bmod 3 = 2$。
数据规模与约定
对于 的数据,;
对于 的数据,,,。
说明
题目译自 COCI2015-2016 CONTEST #5 T6 PODNIZOVI。