题目名称 2319. 地球往事
输入输出 The_past_of_the_earth.in/out
难度等级 ★★★
时间限制 2000 ms (2 s)
内存限制 256 MiB
测试数据 10
题目来源 GravatarSatoshi 于2016-05-18加入
开放分组 全部用户
提交状态
分类标签
线段树
分享题解
通过:9, 提交:21, 通过率:42.86%
Gravatarkito 100 1.281 s 9.45 MiB C++
GravatarFoolMike 100 4.769 s 76.61 MiB C++
GravatarAntiLeaf 100 5.558 s 86.51 MiB C++
Gravatar神利·代目 100 7.479 s 91.85 MiB C++
Gravatar再见 100 8.006 s 142.58 MiB C++
Gravatar0 100 8.326 s 63.10 MiB C++
GravatarSatoshi 100 10.865 s 86.15 MiB C++
GravatarKZNS 100 11.194 s 149.47 MiB C++
Gravatarrewine 100 12.888 s 183.60 MiB C++
GravatarKZNS 90 13.423 s 149.47 MiB C++
关于 地球往事 的近10条评论(全部评论)
Orz
Gravatarrewine
2017-05-28 16:41 2楼
Gravatar再见
2016-06-25 14:42 1楼

2319. 地球往事

★★★   输入文件:The_past_of_the_earth.in   输出文件:The_past_of_the_earth.out   简单对比
时间限制:2 s   内存限制:256 MiB

【题目描述】

地球三体组织的头领叶文洁需要跟三体组织进行交流,三体组织为了保密信息,使用了一种神奇的加密方式:

刚开始给定一个初始的数列$a_1,a_2.....a_n$

每次的新信息是通过修改原有的信息传输的.

修改操作:

$xor$ l r x

$or$ l r x

$and$ l r x

表示$a_l,a_{l+1}.....a_{r-1}$,$a_r$分别xor x,or x,and x

查询操作:

$query$ l r

表示$a_l,a_{l+1}.....a_{r-1},a_r$的区间和

区间和就是这次要传输的新信息,至于区间和表达了什么意思,这就和你没有关系了(需要进行解密).

你的任务是又快又准的求出每次的区间和

【输入格式】

第一行一个整数$n$

第二行$n$个整数$a_1,a_2...a_n$

接下来一个整数$q$,表示修改和查询的总次数

接下来$q$行,表示$q$个操作

【输出格式】

对于每个"query"输出一行,表示区间和

【样例输入】

10 82 75 64 119 24 37 65 1118 2223 4445 10 xor 7 9 4105 query 3 8 or 2 5 1113 query 4 9 and 4 8 410105 query 2 6 xor 1 9 110 and 2 4 8 or 2 7 1555 query 3 7

【样例输出】

9619 17986 2471 7923

【数据范围】

对于20%的数据$N<=2000$

对于100%的数据$N<=100000,x<=10000000$

对于100%的数据$q=N$