Submission #848447

#TimeUsernameProblemLanguageResultExecution timeMemory
848447MinhQNgoXORanges (eJOI19_xoranges)Pypy 3
18 / 100
1010 ms38276 KiB
n, q = map(int, input().split())
a = [int(x) for x in input().split()]

prefix_xor = a[:]
for i in range(1, n):
    prefix_xor[i] ^= prefix_xor[i - 1]

for _ in range(q):
    act_type, x, y = map(int, input().split())

    x -= 1
    y -= 1

    res = 0
    for d in range(1, y - x + 2):
        total_xor_of_seq_len_d = 0
        for i in range(x, y - d + 2):
            if i == 0:
                total_xor_of_seq_len_d ^= prefix_xor[i + d - 1]
            else:
                total_xor_of_seq_len_d ^= (prefix_xor[i + d - 1] ^ prefix_xor[i - 1])
        res ^= total_xor_of_seq_len_d
    print(res)
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...