Submission #1221611

#TimeUsernameProblemLanguageResultExecution timeMemory
1221611mayacXORanges (eJOI19_xoranges)C++20
55 / 100
1057 ms3848 KiB
#include <iostream> #include <vector> #include <queue> using namespace std; int main(){ int n,q,a,b,t,ans; cin>>n>>q; vector<int> v(n),vxor(n+1,0),yesno0(n+1,0),yesno1(n+1,0); for(int i=0;i<n;i++){ cin>>v[i]; vxor[i+1]=vxor[i]^v[i]; if(i%2==0){ yesno0[i+1]=v[i]; if(i>0)yesno0[i+1]=v[i]^yesno0[i-1]; }else{ yesno1[i+1]=v[i]; yesno1[i+1]=v[i]^yesno1[i-1]; } } while(q--){ cin>>t>>a>>b;a--; if(t==1){ v[a]=b; }else{ ans=0; if((b-a)%2==1){ for(int i=a;i<b;i+=2){ ans=ans^v[i]; } } cout<<ans<<"\n"; } } }
#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...