hdu-1166敌兵布阵(树状数组)
来源:互联网 发布:mac怎么退出后台程序 编辑:程序博客网 时间:2024/04/30 03:06
此处的树状数组讲解请点击:here~~~
#include<stdio.h>#include<string.h>int n,a[50005],q[40005];int lowbit(int x){ return x&(-x);}int Getsum(int pos){ int res = 0; while(pos > 0) { res += a[pos]; pos -= lowbit(pos); } return res;}void add(int pos,int num){ while(pos <= n) { a[pos] += num; pos += lowbit(pos); }}int main(){ int t,x,y,p=1; char s[20]; scanf("%d",&t); while(t--) { scanf("%d",&n); memset(a,0,sizeof(a)); for(int i = 1;i <= n;i++) { scanf("%d",&x); add(i,x); } int num = 0; while(scanf("%s",s),strcmp(s,"End")!=0) { scanf("%d%d",&x,&y); if(strcmp(s,"Query")==0) q[num++] = Getsum(y) - Getsum(x-1); else if(strcmp(s,"Add")==0) add(x,y); else add(x,-y); } printf("Case %d:\n",p++); for(int i = 0;i < num;i++) { printf("%d\n",q[i]); } }}
0 0
- hdu - 1166 - 敌兵布阵(树状数组)
- hdu 1166 敌兵布阵 (树状数组)
- HDU 1166 - 敌兵布阵(树状数组)
- hdu 1166 敌兵布阵 ( 树状数组 )
- HDU 1166 敌兵布阵(树状数组)
- hdu-1166敌兵布阵(树状数组)
- HDU 1166 敌兵布阵 (树状数组)
- hdu-1166 敌兵布阵(树状数组)
- hdu 1166 敌兵布阵(树状数组)
- hdu 1166 敌兵布阵(树状数组)
- HDU 1166 敌兵布阵(树状数组)
- HDU 1166 敌兵布阵(树状数组)
- HDU 1166 敌兵布阵 (树状数组)
- HDU 1166 敌兵布阵(树状数组)
- hdu 1166 敌兵布阵(树状数组)
- HDU 1166 敌兵布阵(树状数组)
- HDU 1166 敌兵布阵(树状数组)
- 树状数组 hdu 1166(敌兵布阵)
- xfire開發webservice所需jar包
- Windows平台安装Beautiful Soup
- 【自动构建系列】自动部署环境的shell脚本
- 根据上次输入操作的时间设置离开状态
- Android开发规范——命名
- hdu-1166敌兵布阵(树状数组)
- hadoop的日志主要是MapReduce程序
- MapReduce与MySQL交互
- Qt串口通信专题教程
- Unity3d用户手册用户攻略资源商铺发布商办理
- sphinx实现模糊查询
- iOS - 3种方法获取设备硬件类型:
- 常用html元素总结
- Linux驱动开发学习归纳-1