제출 #787164

#제출 시각아이디문제언어결과실행 시간메모리
787164ThylOneXORanges (eJOI19_xoranges)C++14
38 / 100
405 ms9400 KiB
#include<bits/stdc++.h>

using namespace std;
#define int long long
signed main(){
	int n;cin>>n;
	int q;cin>>q;
	vector<int> nums(n);
	for(int i = 0 ; i < n ; i++){
		cin>>nums[i];
	}
	int XorPref[n];
	
	int acts[2] = {0,0};
	for(int i = 0;i<n;i++){
		acts[i%2]^=nums[i];
		XorPref[i]=acts[i%2];
	}
	
	for(int _=0;_<q;_++){
		int type;cin>>type;
		if(type==1){
			int pos;cin>>pos;pos--;
			int val;cin>>val;
			nums[pos]=val;
		}else{
			int l,r;cin>>l>>r;
			l--;r--;
			if(((r-l)&1)){
				cout<<0<<endl;
			}else{
				if((l-2)<0){
					int ans = XorPref[r];
					cout<<ans<<endl;
				}else{
					int ans = XorPref[r]^XorPref[l-2];
					cout<<ans<<endl;
				}
			
				
			}
			
		}
	}
	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...