This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
ll n, q, i;
cin>>n>>q;
vector<ll> a(n+1);
vector<ll> b(n+1);
vector<ll> T1(n+1, 0);
vector<ll> T2(n+1, 0);
for(i=1; i<=n; i++){
ll x;
cin>>x;
if(i%2==0){
a[i]=x;
b[i]=0;
T1[i]=(T1[i-1]^a[i]);
}
else{
b[i]=x;
a[i]=0;
}
T1[i]=(T1[i-1]^a[i]);
T2[i]=(T2[i-1]^b[i]);
}
while(q--){
int t;
cin>>t;
if(t==1){
ll j, asdf;
cin>>j>>asdf;
}
else{
ll l, r;
cin>>l>>r;
if((r-l)%2==1) cout<<0<<endl;
else{
if(l%2==0){
cout<<(T1[r]^T1[l-1])<<endl;
}
else{
cout<<(T2[r]^T2[l-1])<<endl;
}
}
}
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |