求调,玄两关
查看原帖
求调,玄两关
1352096
Rey55555楼主2024/12/8 18:54
#include<bits/stdc++.h>
using namespace std;
int a,b,mod,n,m,t[100005];
int lowbit(int x){	//lowbit操作
	return x&(-x);
}

void add(int x,int k){	//更改数值
	for(int i=x;i<=n;i+=lowbit(i)){
		t[x]+=k;
	}
}

int ask(int x){	//提取数值(查询)
	int sum=0;
	for(int i=x;i>0;i-=lowbit(i)){
		sum+=t[i];
	}
	return sum;
}
int main(){
	cin>>n>>m;
	for(int i=0;i<m;i++)
	{
		cin>>mod; 
		if(mod==1){
			cin>>a>>b;
			add(a,1);
			add(b+1,1);
		}
		if(mod==2){
			cin>>a;
	        cout<<ask(a)%2<<endl;
	    }
	}
}
2024/12/8 18:54
加载中...