#ABC339G. 较小的和

较小的和

较小的和

题目描述

给定长度为 NN 的序列 A=(A1,A2,…,AN)A=(A_1,A_2,\dots,A_N)。

回答以下 QQ 个查询。第 ii 个查询如下:

在 ALi,ALi+1,…,ARiA_{L_i},A_{L_i+1},\dots,A_{R_i} 中,求不超过 XiX_i 的元素之和。

这里,你需要在线回答这些查询。

也就是说,只有回答完当前查询后,下一个查询才会被给出。

因此,第 ii 个查询本身不直接给出,而是给出加密后的输入 αi,βi,γi\alpha_i, \beta_i, \gamma_i。请按以下步骤还原原始查询并回答它。

设 B0=0B_0=0,BiB_i 为第 ii 个查询的答案。

查询可按如下方式解密:

  • Li=αi⊕Bi−1L_i = \alpha_i \oplus B_{i-1}
  • Ri=βi⊕Bi−1R_i = \beta_i \oplus B_{i-1}
  • Xi=γi⊕Bi−1X_i = \gamma_i \oplus B_{i-1}

其中,x⊕yx \oplus y 表示 xx 和 yy 的按位异或。

什么是按位异或?

非负整数 AA 和 BB 的按位异或 A⊕BA \oplus B 定义如下:

在二进制表示下,A⊕BA \oplus B 的 2k2^k 位(k≥0k \ge 0)上的数字为:如果 AA 和 BB 中恰好一个在该位上的数字为 11,则为 11,否则为 00。

例如,3⊕5=63 \oplus 5 = 6(二进制下 011⊕101=110011 \oplus 101 = 110)。

输入格式

输入按以下格式从标准输入给出:

NN
A1A_1 A2A_2 …\dots ANA_N
QQ
α1\alpha_1 β1\beta_1 γ1\gamma_1
α2\alpha_2 β2\beta_2 γ2\gamma_2
⋮\vdots
αQ\alpha_Q βQ\beta_Q γQ\gamma_Q

输出格式

输出 QQ 行。

第 ii 行应包含第 ii 个查询的答案。

样例

8
2 0 2 4 0 2 0 3
5
1 8 3
10 12 11
3 3 2
3 6 5
12 0 11
9
2
0
8
5

给定序列 A=(2,0,2,4,0,2,0,3)A=(2,0,2,4,0,2,0,3)。

这个输入包含五个查询。

初始时 B0=0B_0=0。

第一个查询是 α=1,β=8,γ=3\alpha = 1, \beta = 8, \gamma = 3。

解密后得到 $L_i = \alpha \oplus B_0 = 1, R_i = \beta \oplus B_0 = 8, X_i = \gamma \oplus B_0 = 3$。

这个查询的答案是 99。将其记为 B1B_1。

下一个查询是 α=10,β=12,γ=11\alpha = 10, \beta = 12, \gamma = 11。

解密后得到 $L_i = \alpha \oplus B_1 = 3, R_i = \beta \oplus B_1 = 5, X_i = \gamma \oplus B_1 = 2$。

这个查询的答案是 22。将其记为 B2B_2。

下一个查询是 α=3,β=3,γ=2\alpha = 3, \beta = 3, \gamma = 2。

解密后得到 $L_i = \alpha \oplus B_2 = 1, R_i = \beta \oplus B_2 = 1, X_i = \gamma \oplus B_2 = 0$。

这个查询的答案是 00。将其记为 B3B_3。

下一个查询是 α=3,β=6,γ=5\alpha = 3, \beta = 6, \gamma = 5。

解密后得到 $L_i = \alpha \oplus B_3 = 3, R_i = \beta \oplus B_3 = 6, X_i = \gamma \oplus B_3 = 5$。

这个查询的答案是 88。将其记为 B4B_4。

下一个查询是 α=12,β=0,γ=11\alpha = 12, \beta = 0, \gamma = 11。

解密后得到 $L_i = \alpha \oplus B_4 = 4, R_i = \beta \oplus B_4 = 8, X_i = \gamma \oplus B_4 = 3$。

这个查询的答案是 55。将其记为 B5B_5。

数据范围

  • 所有输入值均为整数
  • 1≤N≤2×1051 \le N \le 2 \times 10^5
  • 0≤Ai≤1090 \le A_i \le 10^9
  • 1≤Q≤2×1051 \le Q \le 2 \times 10^5
  • 对于加密输入,满足 0≤αi,βi,γi≤10180 \le \alpha_i, \beta_i, \gamma_i \le 10^{18}
  • 对于解密后的查询,满足 1≤Li≤Ri≤N1 \le L_i \le R_i \le N,且 0≤Xi≤1090 \le X_i \le 10^9
难度 省选/NOI-
通过率 —
尝试 0
通过 0
ID
3199
类型
传统题
Time Limit
3500ms
Memory Limit
1024MiB
上传者
标签