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

    ID: 16882 远端评测题 6000ms 1024MiB 尝试: 0 已通过: 0 显示难度NOI/NOI+/CTS 上传者: 标签>2025CTT(清华集训/北大集训)

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

题目描述

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

  • 对于 0≤x<pd0 \le x < p^d,设 xx 的 pp 进制表示为 (xd−1⋯x1x0)‾p\overline{(x_{d-1} \cdots x_1 x_0)}_p(不足 dd 位的用前导 0 补齐),定义 popcountp(x)\text{popcount}_p(x) 为 xx 的 pp 进制表示下非零位的个数,即 ∑i=0d−1[xi>0]\sum_{i=0}^{d-1} [x_i > 0]。
  • 对于 0≤x,y<pd0 \le x, y < p^d,设 x,yx, y 的 pp 进制表示分别为 $\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) (0≤i<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) (0≤i<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) mod pz_i = (x_i + y_i) \bmod p (0≤i<d0 \le i < d)。

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

  • 对于 1≤i≤n1 \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,…,zpd−1z_0, z_1, \dots, z_{p^d - 1}。

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

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

输出格式

输出到标准输出。

输出 qq 行,第 ii (1≤i≤q1 \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

提示

【子任务】

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

  • 1≤n≤3×1051 \le n \le 3 \times 10^5,0≤d≤120 \le d \le 12,p∈{2,3}p \in \{2, 3\};
  • 对于所有 1≤i≤n1 \le i \le n,均有 0≤ai<pd0 \le a_i < p^d;
  • 对于所有 1≤i≤n1 \le i \le n,均有 0≤wi<2320 \le w_i < 2^{32};
  • 对于所有 0≤i<pd0 \le i < p^d,均有 0≤zi<2320 \le z_i < 2^{32};
  • 1≤q≤3×1051 \le q \le 3 \times 10^5;
  • 0≤A,B,C≤1090 \le A, B, C \le 10^9,0≤l1≤r1<pd0 \le l_1 \le r_1 < p^d,1≤l2≤r2≤n1 \le l_2 \le r_2 \le n。
子任务编号 分值 n≤n \le d≤d \le p=p = q≤q \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 = 0 且 r1=pd−1r_1 = p^d - 1。

【提示】

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