Submission #1329840

#TimeUsernameProblemLanguageResultExecution timeMemory
1329840abdoza55XORanges (eJOI19_xoranges)C++20
0 / 100
1094 ms1400 KiB
//#include"debugging.h"
#include<iostream>
#include<iomanip>
#include<cmath>
#include<algorithm>
#include<string>
#include<vector>
#include<set>
#include<map>
#include<stack>
#include<queue>
#include<tuple>
#include<cctype>
#include<numeric>
#include<climits>
#include<cassert>
#include<bitset>
#include<cstdlib>
#include<unordered_set>
#include<unordered_map>
#include<utility>
using namespace std;
#define cy cout<<"YES"
#define cn cout<<"NO"
#define all(x) x.begin(),x.end()
#define rall(x) x.rbegin(),x.rend()
#define FOR(x) for(int &i:x)cin>>i;
#define SZ(x) int(x.size())

const int MOD=1e9+7;
typedef long long ll;

void solve() {
    int n,q;cin>>n>>q;
    vector<int>v(n+1);
    for(int i=1;i<n+1;i++){
        cin>>v[i];
    }
    while(q--){
        int t;cin>>t;
        if(t==1){
            int i,va;cin>>i>>va;
            v[i]=va;
        }
        else{
            int l,r;cin>>l>>r;
            int res=0;
            for(int i=l;i<=r;i++){
                if((r-i+1)&1)res^=v[i];
            }
            cout<<res<<"\n";
            
        }
    }
}

int main() {
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	int t=1;
	//cin>>t;
	//cin.ignore();
	while(t--) {
		solve();
		cout<<(t?"\n":"");
	}
	return 0;
}
#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...