제출 #787159

#제출 시각아이디문제언어결과실행 시간메모리
787159ThylOneXORanges (eJOI19_xoranges)C++14
0 / 100
383 ms8716 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][2];
	for(int b=0;b<2;b++){
		int act=0;
		for(int i = 0;i<n;i++){
			if((i&1)==b)act^=nums[i];
			XorPref[i][b]=act;
		}
	}
	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==0){
					int ans = XorPref[r][r%2];
					cout<<ans<<endl;
				}else{
					int ans = XorPref[r][r%2]-XorPref[l-2][r%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...