hdu 1166 敌兵布阵

来源:互联网 发布:域名备案需要哪些资料 编辑:程序博客网 时间:2024/06/03 21:32
#include<cstdio>#include<cstring>using namespace std;int n;int bit[500017];void add(int i,int v){while(i<=n){bit[i]+=v;if(bit[i]<0)bit[i]=0; i+=i&-i;}}int sum(int i){int  res=0;while(i>0){res+=bit[i];i-=i&-i;}return res;}int main(){int a,b,c,T,s=1;char str[10];scanf("%d",&T);while(T--){memset(bit,0,sizeof(bit));scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d",&c);add(i,c);}printf("Case %d:\n",s);s++; while(~scanf("%s",str)&&str[0]!='E'){if(str[0]=='Q'){scanf("%d%d",&a,&b);printf("%d\n",sum(b)-sum(a-1));}elseif(str[0]=='S'){scanf("%d%d",&a,&c);add(a,-c);}else{scanf("%d%d",&a,&c);add(a,c);}}}}

0 0
原创粉丝点击