CF242E.XOR on Segment

普及+/提高

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

你得到了一个序列 aa,其中包含 nn 个元素 a1,a2,⋯ ,ana_1,a_2,\cdots,a_n。
你需要执行 mm 个操作,分为两种:

  • 1 l r:求 al∼ara_l\sim a_r 的和。
  • 2 l r x:将 al∼ara_l\sim a_r 异或上 xx。

输入格式

第一行,一个正整数 nn,表示序列长度。

第二行,nn 个非负整数 a1,a2,⋯ ,ana_1,a_2,\cdots,a_n。

第三行,一个正整数 mm,表示操作个数。

接下来 mm 行,每行 33 或 44 个正整数,表示一个操作。

输出格式

对每个操作 11,输出一行一个整数表示答案。

输入输出样例

  • 输入#1

    5
    4 10 3 13 7
    8
    1 2 4
    2 1 3 3
    1 2 4
    1 3 3
    2 2 5 5
    1 1 5
    2 1 2 10
    1 2 3
    

    输出#1

    26
    22
    0
    34
    11
    
  • 输入#2

    6
    4 7 4 0 7 3
    5
    2 2 3 8
    1 1 5
    2 3 5 1
    2 4 5 6
    1 2 3
    

    输出#2

    38
    28
    

说明/提示

1≤n≤1051\le n\le 10^5

1≤m≤5×1041\le m\le 5\times 10^4

0≤ai≤1060\le a_i\le 10^6

1≤x≤1061\le x \le 10^6

  • 在 C++ 和 Java 中,异或符号为 ^,在 Pascal 中为 xor。

输入解题思路,AI测评打分。不知道怎么写?

首页