插入和求和都为logn的数据结构
int lowbit(int t){
return t&(-t);
}
void insert(int k,int d){//插入
while(k<=N){
s[k]+=d;
k+=lowbit(k);
}
}
long long getsum(int k){//求和
long long sum=0;
while(k>0){
sum+=s[k];
k-=lowbit(k);
}
return sum;
}
插入和求和都为logn的数据结构
int lowbit(int t){
return t&(-t);
}
void insert(int k,int d){//插入
while(k<=N){
s[k]+=d;
k+=lowbit(k);
}
}
long long getsum(int k){//求和
long long sum=0;
while(k>0){
sum+=s[k];
k-=lowbit(k);
}
return sum;
}