题目 20107

普及模拟赛 20 - C

查看题解 ↗GitHub ↗如何评测
题号
20107
时间限制
2000 ms
标签
比赛
来源
2026 普及模拟赛 20 - C

时间限制:2s。

给定一个数列aa,你需要进行下面三种操作:

  1. 求出某区间每一个数的按位异或和。
  2. 求出某区间每一个数的按位或和。
  3. 求出某区间每一个数的按位与和。

输入格式

第一行包含两个整数 n,mn, m,分别表示该数列数字的个数和操作的总个数。

第二行包含 nn 个用空格分隔的整数,其中第 ii 个数字表示数列第 ii 项的初始值。

接下来 mm 行每行包含 33 个整数,表示一个操作,具体如下:

  1. 1 l r:输出区间 [l,r][l, r] 内每个数的按位异或和。
  2. 2 l r:输出区间 [l,r][l, r] 内每个数的按位或和。
  3. 3 l r:输出区间 [l,r][l, r] 内每个数的按位与和。

输出格式

输出包含 mm 行整数,即为所有操作的结果。

样例

input1
5 5
9 9 4 9 1 
1 1 4
1 2 4
2 1 4
3 2 2
1 4 5
output1
13
4
13
9
8

其他样例见下发文件。

数据范围

数据点编号 n,mn,m 特殊性质
1,2,3,4 [1,10][1,10] 无
5,6,7,8 [1,104][1,10^4] A
9,10,11,12,13,14 [1,104][1,10^4] 无
15,16,17,18,19,20 [1,5×105][1,5 \times 10^5] 无

特殊性质A:只包含一操作。

对于 100%100\% 的数据:1≤n,m≤5×1051 \le n, m \le 5 \times {10}^5,0≤ai≤1060 \le a_i \le 10^6。

数据下载

题目 20107 的公开数据

正在读取文件列表…

常用命令

题目 20107 的 ROJ 命令

以下命令默认使用全局安装的 ROJ Skill,请在终端中直接执行;如果修改过 AGENT_HOME,请将命令中的 ~/.agents 替换为对应目录。