HDOJ1166 敌兵布阵【线段树】
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 敌兵布阵【线段树】相关推荐
- HDU 1166 敌兵布阵(线段树:点更新,区间求和)
HDU 1166 敌兵布阵(线段树:点更新,区间求和) http://acm.hdu.edu.cn/showproblem.php?pid=1166 题意: 给你n个整数,然后给你多条命令,每条命令如 ...
- hdu 1166 敌兵布阵 (线段树)
敌兵布阵 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- 敌兵布阵 线段树
敌兵布阵 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Description Li ...
- hdu1166 敌兵布阵 线段树
C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了.A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况.由于 ...
- Hud 敌兵布阵 --线段树的插点问线
每个树存放的事左右端点的的总和,然后再递归往下分成更小的区间,根据着2*t是下一层节点的节点端点是(left,left+right)/2);2*t+1是右节点的区间是(left+right)/2+1, ...
- A - 敌兵布阵(线段树模版题)
传送门 C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了.A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情 ...
- 题目敌兵布阵-------线段树(单点修改查询,区间修改查询)
C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了.A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况.由于 ...
- HDU1166 敌兵布阵 [线段树模板]
题意:在序列中修改单点和查询区间和 #include<iostream> #include<cstdio> #include<cstring> #define ls ...
- HDU1166 敌兵布阵(树状数组模板题)
敌兵布阵 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
最新文章
- java输出回文数原代码_JAVA怎么用循环语句编写一个判别是否为回文数的代码?...
- 世界一流大学如何建设人工智能学科
- Windows 系统安装Docker Compose 步骤
- php网站入门鹿泉银山,01PHP编程新手入门第一步
- 大学校运会计算机专业方阵,校运动会方阵策划案
- 什么是activemq_什么是ActiveMQ?
- OAuth 2.0——授权服务开发笔记(二)
- 大数据:技术与应用实践指南_大数据技术与应用社团 社会实践总结篇
- 【二分】【中等难度】noip模拟赛 聪哥的工资
- Quartz.Net 2.0 bate1 使用
- 济南python工资一般多少-济南Go全栈区块链课程
- 计算机组成原理三个相关,计算机组成原理试题3
- java8 垃圾回收算法_Java垃圾回收机制算法详解
- 【新知实验室】腾讯云TRTC接入测试以及状态同步功能重点验证
- 服务器虚拟化 可靠性,质疑:虚拟化真的可以提高系统可靠性吗
- sql order by 用法
- 转载 解密蓝牙mesh系列 | 第五篇 【好友(Friend)和低功耗节点(LPN)】【友谊(Friendship)参数】【友谊建立】【友谊(Friendship)消息传送】【安全性】【友谊终止】
- SCA连载GDPR罚单 | 瑞典高中人脸识别被罚,为我们敲响了哪些警钟?
- 国际足联正式裁决莫德斯特闹剧 此事或还有反转?
- android java pbo_Android OpenGL ES 3.0 PBO而不是glReadPixels()
热门文章
- background 互联网图片_cssbackground-image和layer-background-image的区别
- python bootstrap 4_Python3.4+Django1.9+Bootstrap3
- 归并排序 java_归并排序(Java实现)
- win7系统如何访问xp系统的服务器,WIN7系统怎么让XP系统访问呢
- python求阶乘之和_python计算阶乘前n项和
- 驱动备份工具哪个好_大庆seo排名优化推广公司工具哪个好
- mysql union as 注入_sql注入入门 之 mysql 常规注入 [ union方式 ]
- 大师兄科研网vasp_怎样知道一名研究生有没有科研潜力?
- java web容器原理_javaWeb工作原理
- C++11 for区间遍历:vector几种遍历方式