Problem : 1166 ( 敌兵布阵 )     Judge Status : Accepted
RunId : 5862942    Language : GCC    Author : qq1203456195

#include <stdio.h>
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define maxn 55555
int sum[maxn<<2];
void PushUp(int rt)
{sum[rt]=sum[rt<<1]+sum[rt<<1|1];
}
void build(int l,int r,int rt)
{int m;if (l==r){scanf("%d",&sum[rt]);return;}m=((l+r)>>1);build(lson);build(rson);PushUp(rt);
}
void update(int p,int add,int l,int r,int rt)
{int m;if (l==r){sum[rt]+=add;return;}m=((l+r)>>1);if (p<=m)update(p,add,lson);elseupdate(p,add,rson);PushUp(rt);
}
int query(int L,int R,int l,int r,int rt)
{int m,ret=0;if (L<=l&&R>=r){return sum[rt];}m=((l+r)>>1);if (L<=m)ret+=query(L,R,lson);if (R>m)ret+=query(L,R,rson);return ret;
}
int main()
{int T,n,cas;char op[10];int a,b;scanf("%d",&T);for (cas=1;cas<=T;cas++){printf("Case %d:\n",cas);scanf("%d",&n);build(1,n,1);while (scanf("%s",op)){if (op[0]=='E')break;scanf("%d%d",&a,&b);if(op[0]=='Q')printf("%d\n",query(a,b,1,n,1));elseif(op[0]=='S')update(a,-b,1,n,1);elseupdate(a,b,1,n,1);}}return 0;
}

转载于:https://www.cnblogs.com/CheeseZH/archive/2012/04/28/2475493.html

HDOJ1166 敌兵布阵【线段树】相关推荐

  1. HDU 1166 敌兵布阵(线段树:点更新,区间求和)

    HDU 1166 敌兵布阵(线段树:点更新,区间求和) http://acm.hdu.edu.cn/showproblem.php?pid=1166 题意: 给你n个整数,然后给你多条命令,每条命令如 ...

  2. hdu 1166 敌兵布阵 (线段树)

    敌兵布阵 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submi ...

  3. 敌兵布阵 线段树

    敌兵布阵 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Description Li ...

  4. hdu1166 敌兵布阵 线段树

    C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了.A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况.由于 ...

  5. Hud 敌兵布阵 --线段树的插点问线

    每个树存放的事左右端点的的总和,然后再递归往下分成更小的区间,根据着2*t是下一层节点的节点端点是(left,left+right)/2);2*t+1是右节点的区间是(left+right)/2+1, ...

  6. A - 敌兵布阵(线段树模版题)

    传送门 C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了.A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情 ...

  7. 题目敌兵布阵-------线段树(单点修改查询,区间修改查询)

    C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了.A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况.由于 ...

  8. HDU1166 敌兵布阵 [线段树模板]

    题意:在序列中修改单点和查询区间和 #include<iostream> #include<cstdio> #include<cstring> #define ls ...

  9. HDU1166 敌兵布阵(树状数组模板题)

    敌兵布阵 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submi ...

最新文章

  1. java输出回文数原代码_JAVA怎么用循环语句编写一个判别是否为回文数的代码?...
  2. 世界一流大学如何建设人工智能学科
  3. Windows 系统安装Docker Compose 步骤
  4. php网站入门鹿泉银山,01PHP编程新手入门第一步
  5. 大学校运会计算机专业方阵,校运动会方阵策划案
  6. 什么是activemq_什么是ActiveMQ?
  7. OAuth 2.0——授权服务开发笔记(二)
  8. 大数据:技术与应用实践指南_大数据技术与应用社团 社会实践总结篇
  9. 【二分】【中等难度】noip模拟赛 聪哥的工资
  10. Quartz.Net 2.0 bate1 使用
  11. 济南python工资一般多少-济南Go全栈区块链课程
  12. 计算机组成原理三个相关,计算机组成原理试题3
  13. java8 垃圾回收算法_Java垃圾回收机制算法详解
  14. 【新知实验室】腾讯云TRTC接入测试以及状态同步功能重点验证
  15. 服务器虚拟化 可靠性,质疑:虚拟化真的可以提高系统可靠性吗
  16. sql order by 用法
  17. 转载 解密蓝牙mesh系列 | 第五篇 【好友(Friend)和低功耗节点(LPN)】【友谊(Friendship)参数】【友谊建立】【友谊(Friendship)消息传送】【安全性】【友谊终止】
  18. SCA连载GDPR罚单 | 瑞典高中人脸识别被罚,为我们敲响了哪些警钟?
  19. 国际足联正式裁决莫德斯特闹剧 此事或还有反转?
  20. android java pbo_Android OpenGL ES 3.0 PBO而不是glReadPixels()

热门文章

  1. background 互联网图片_cssbackground-image和layer-background-image的区别
  2. python bootstrap 4_Python3.4+Django1.9+Bootstrap3
  3. 归并排序 java_归并排序(Java实现)
  4. win7系统如何访问xp系统的服务器,WIN7系统怎么让XP系统访问呢
  5. python求阶乘之和_python计算阶乘前n项和
  6. 驱动备份工具哪个好_大庆seo排名优化推广公司工具哪个好
  7. mysql union as 注入_sql注入入门 之 mysql 常规注入 [ union方式 ]
  8. 大师兄科研网vasp_怎样知道一名研究生有没有科研潜力?
  9. java web容器原理_javaWeb工作原理
  10. C++11 for区间遍历:vector几种遍历方式