| Task: | Xor sum |
| Sender: | aalto26dm_034 |
| Submission time: | 2026-09-21 17:29:22 +0300 |
| Language: | C++ (C++20) |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | details |
| #2 | ACCEPTED | 0.60 s | details |
Compiler report
input/code.cpp: In member function 'int compute::findleft(int, int, int)':
input/code.cpp:81:13: warning: unused variable 'v' [-Wunused-variable]
81 | int v=data[t];
| ^
input/code.cpp:85:5: warning: no return statement in function returning non-void [-Wreturn-type]
85 | }
| ^Code
#include <iostream>
#include <vector>
#include <climits>
using std::cout;
using std::endl;
#define DEBUG std::cout<<"LINE"<<__LINE__;
#define IN(A) int A;std::cin>>A;
#define BUG(A,B) std::cout<<A<<B<<std::endl;
template<typename T> T printV(std::vector<T> V) {
for (int i=0;i<V.size-1;i++) {
std::cout<<V[i]<<" ";
}
std::cout<<V[V.size-1];
std::cout<<endl;
}
int64_t max3(int64_t a,int64_t b,int64_t c) {
return std::max(a,std::max(b,c));
}
struct compute {
std::vector<int> data;
std::vector<std::pair<int,int>> result;
bool start() {
IN(n);
IN(q)
int k;
for (k=1;k<n;k=k*2);
k=k*2;
data.assign(k,0);
for (int i=0;i<n;i++) {
std::cin>>data[i+k/2];
}
for (int i=k/2+n-1;i>0;i--) {
data[i/2]=data[i]^data[i/2];
}
/* for (int i=0;i<data.size();i++) {
std::cout<<data[i]<<" ";
}std::cout<<endl; */
for (int i=0;i<q;i++) {
IN(a);
IN(b);
a=a+k/2-1;
b=b+k/2-1;
int x=a;
int y=b;
int v=0;
while (x<=y) {
if (x%2==1) v=v^data[x++];
if (y%2==0) v=v^data[y--];
x=x/2;
y=y/2;
}
/*
while (true) {
if (x&1) v=data[x]^v;
if (y<=0) break;
if (!(y&1)) v=data[y]^v;
if (x==y||x<=0||y<=0) break;
if (x&1)
x=x/2+1;
else
x=x/2;
if (y&1)
y=y/2;
else
y=y/2-1;
}
*/
std::cout<<v<<endl;
}
return true;
}
int findleft(int t,int a,int b){
int v=data[t];
}
void readV(int n) {
for (int i=0;i<n;i++) std::cin>>data[i];
}
};
int main() {
compute comp;
comp.start();
}
Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 8 36 7 6 4 6 2 9 4 8 1 1 1 2 1 3 ... |
| correct output |
|---|
| 7 1 5 3 1 ... |
| user output |
|---|
| 7 1 5 3 1 ... |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 200000 200000 921726510 307633388 992247073 ... |
| correct output |
|---|
| 834756431 130379787 403037296 308618218 784778243 ... |
| user output |
|---|
| 834756431 130379787 403037296 308618218 784778243 ... |
