#include<iostream>
using namespace std;
int m,n,a[100001],c[100001],sum[100001];
int lowbit (int t){
return t&(-t);
}
void add(int x,int y){
for(int i=x;i<=n;i+=lowbit(i)){
c[i]+=y;
}
}
int getsum(int x){
int ans=0;
for(int i=x;i>=1;i-=lowbit(i)){
ans+=c[i];
return ans;
}
}
int main(){
// 1 x k 含义:将第 xx 个数加上 kk
//
// 2 x y 含义:输出区间 [x,y][x,y] 内每个数的和
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
add(i,a[i]);
}
int x,y,z;
for(int i=1;i<=m;i++){
cin>>x>>y>>z;
if(x==1){
add(y,z);
}else{
cout<<getsum(y)-getsum(x-1)<<endl;
}
}
return 0;
}
多谢各位大佬