#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
const int MAX_N=5e4+6;
int n,a[MAX_N],c[MAX_N];
void add(int x,int val){
while(x<=n)c[x]+=val,x+=x&-x;
}
int sum(int x){
int res=0;
while(x)res+=c[x],x-=x&-x;
return res;
}
int main(){
ios::sync_with_stdio(false);cin.tie(0);
int T;cin>>T;
int cs=0;
while(T--){
cout<<"Case "<<cs<<":\n";
char str[106];
cin>>n;
for(int i=1;i<=n;i++)c[i]=0;
for(int i=1;i<=n;i++){
cin>>a[i];add(i,a[i]);
}
while(cin>>str,strcmp(str,"End")!=0){
int a,b;
cin>>a>>b;
if(strcmp(str,"Query")==0)cout<<sum(b)-sum(a-1)<<endl;
if(strcmp(str,"Add")==0)add(a,b);
if(strcmp(str,"Sub")==0)add(a,-b);
}
}
}
hdu 1166 敌兵布阵(树状数组裸题)
最新推荐文章于 2022-12-10 00:09:45 发布
本文提供了一道来自杭电OJ的1166号题目的解决方案,采用C++实现,利用树状数组进行区间求和及更新操作。代码中包含了对查询、增加和减少操作的支持,并通过了平台的测试。
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
ACE-Step
音乐合成
ACE-Step
ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言
1万+

被折叠的 条评论
为什么被折叠?



