#P14933. [北大集训 2025] 解开尘封的序列

[北大集训 2025] 解开尘封的序列

题目描述

给定进制数 p{2,3}p \in \{2, 3\}。定义 pp 进制下的位运算如下:

  • 对于 0x<pd0 \le x < p^d,设 xxpp 进制表示为 (xd1x1x0)p\overline{(x_{d-1} \cdots x_1 x_0)}_p(不足 dd 位的用前导 0 补齐),定义 popcountp(x)\text{popcount}_p(x)xxpp 进制表示下非零位的个数,即 i=0d1[xi>0]\sum_{i=0}^{d-1} [x_i > 0]
  • 对于 0x,y<pd0 \le x, y < p^d,设 x,yx, ypp 进制表示分别为 $\overline{(x_{d-1} \cdots x_1 x_0)}_p, \overline{(y_{d-1} \cdots y_1 y_0)}_p$(不足 dd 位的用前导 0 补齐),定义如下三种运算:
    1. pp 进制按位与:$x \text{ and}_p y = \overline{(z_{d-1} \cdots z_1 z_0)}_p$,其中 zi=min(xi,yi)z_i = \min(x_i, y_i) (0i<d0 \le i < d);
    2. pp 进制按位或:$x \text{ or}_p y = \overline{(z_{d-1} \cdots z_1 z_0)}_p$,其中 zi=max(xi,yi)z_i = \max(x_i, y_i) (0i<d0 \le i < d);
    3. pp 进制按位异或(即 pp 进制不进位加法):$x \text{ xor}_p y = \overline{(z_{d-1} \cdots z_1 z_0)}_p$,其中 zi=(xi+yi)modpz_i = (x_i + y_i) \bmod p (0i<d0 \le i < d)。

给定两个长度为 nn 的序列 a,wa, w 和一个长度为 pdp^d 的序列 zz,其中对于所有 1in1 \le i \le n0ai<pd0 \le a_i < p^d。对于所有 0u<pd0 \le u < p^d,定义 uu 的生成序列 F(u)F(u) 如下:

  • 对于 1in1 \le i \le n,令$$b_i = A \cdot \text{popcount}_p(a_i \text{ and}_p u) + B \cdot \text{popcount}_p(a_i \text{ or}_p u) + C \cdot \text{popcount}_p(a_i \text{ xor}_p u),$$其中 A,B,CA, B, C 为给定的非负整数。
  • F(u)F(u) 为将 bb 从小到大排序后得到的序列,即 F(u)=sorted([b1,b2,,bn])F(u) = \text{sorted}([b_1, b_2, \dots, b_n])

qq 次询问,每次询问给定 A,B,C,l1,r1,l2,r2A, B, C, l_1, r_1, l_2, r_2,求

$$\left( \sum_{i=l_1}^{r_1} \sum_{j=l_2}^{r_2} z_i w_j F(i)_j \right) \bmod 2^{32}.$$

输入格式

从标准输入读入数据。

输入的第一行包含三个非负整数 n,d,pn, d, p

输入的第二行包含 nn 个非负整数 a1,a2,,ana_1, a_2, \dots, a_n

输入的第三行包含 nn 个非负整数 w1,w2,,wnw_1, w_2, \dots, w_n

输入的第四行包含 pdp^d 个非负整数 z0,z1,,zpd1z_0, z_1, \dots, z_{p^d - 1}

输入的第五行包含一个正整数 qq,表示询问次数。

输入的第 i+5i+5 (1iq1 \le i \le q) 行包含七个非负整数 A,B,C,l1,r1,l2,r2A, B, C, l_1, r_1, l_2, r_2,表示第 ii 次询问。

输出格式

输出到标准输出。

输出 qq 行,第 ii (1iq1 \le i \le q) 行一个非负整数表示第 ii 次询问的答案。

3 2 2
0 0 2
1 1 2
3 4 4 4
5
1 7 2 0 1 1 1
3 3 5 0 2 2 3
5 2 10 0 1 2 3
3 9 7 0 3 3 3
5 6 1 0 1 2 3
36
304
312
736
182

提示

【子任务】

对于所有测试数据,均有:

  • 1n3×1051 \le n \le 3 \times 10^50d120 \le d \le 12p{2,3}p \in \{2, 3\}
  • 对于所有 1in1 \le i \le n,均有 0ai<pd0 \le a_i < p^d
  • 对于所有 1in1 \le i \le n,均有 0wi<2320 \le w_i < 2^{32}
  • 对于所有 0i<pd0 \le i < p^d,均有 0zi<2320 \le z_i < 2^{32}
  • 1q3×1051 \le q \le 3 \times 10^5
  • 0A,B,C1090 \le A, B, C \le 10^90l1r1<pd0 \le l_1 \le r_1 < p^d1l2r2n1 \le l_2 \le r_2 \le n
子任务编号 分值 nn \le dd \le p=p = qq \le 特殊性质
1 5 50005000 1212 22 55
2 15 3×1053 \times 10^5 1010 ^ 10510^5
3 11 ^ 1212 3×1053 \times 10^5 A
4 8 ^ ^ B
5 17 C
6
7 11 55 33 C
8 16 ^

特殊性质 A:所有询问的给出的三元组 (A,B,C)(A, B, C) 均相同。

特殊性质 B:对于所有询问,均有 l1=r1l_1 = r_1

特殊性质 C:对于所有询问,均有 l1=0l_1 = 0r1=pd1r_1 = p^d - 1

【提示】

本题输入输出规模较大,请使用较为快速的输入输出方式。