样例都过但依然RE 拜托各位大佬看一看
#include<bits/stdc++.h>
using namespace std;
int n,m;
long long a[500001];
int lowbit(int x){
return x & (-x);
}
int add_point(int x,int k){
for(int i=x;i<=n;i+=lowbit(i)){
a[i]+=k;
}
}
void search(int l,int r){
long long sum=0;
//cout<<endl;
for(int i=l-1;i>0;i-=lowbit(i)){
sum-=a[i];
//cout<<sum<<" ";
}
for(int i=r;i>0;i-=lowbit(i)){
sum+=a[i];
//cout<<sum<<" ";
}
cout<<sum<<endl;
}
void ci(){
cin>>n>>m;
for(int i=1;i<=n;i++){
int cin_i;
cin>>cin_i;
add_point(i,cin_i);
}
for(int i=1;i<=m;i++){
int a,x,y;
cin>>a>>x>>y;
if(a==1){
add_point(x,y);
}
else if(a==2){
search(x,y);
}
}
}
int main(){
ci();
return 0;
}