http://acm.hdu.edu.cn/showproblem.php?pid=1166

线段树第一题

#include<cstdio>
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
const int 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)
{if(l==r) {scanf("%d",&sum[rt]);return;}int m=(l+r)>>1;build(lson);build(rson);PushUP(rt);
}
void update(int p,int add,int l,int r,int rt)
{if(l==r) {sum[rt]+=add;return;}int m=(l+r)>>1;if(p<=m) update(p,add,lson);else update(p,add,rson);PushUP(rt);
}
int query(int L,int R,int l,int r,int rt)
{if(L<=l&&R>=r) return sum[rt];int m=(l+r)>>1;int ret=0;if(L<=m) ret+=query(L,R,lson);if(R>m) ret+=query(L,R,rson);return ret;
}
int main(void)
{int T,n,cas,a,b;char op[10];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));else if(op[0]=='S') update(a,-b,1,n,1);else update(a,b,1,n,1);}}return 0;
}

转载于:https://www.cnblogs.com/YogurtShen/archive/2012/08/31/2665000.html

HDU1166-敌兵布阵相关推荐

  1. 线段树递归和非递归实现+hdu1166 敌兵布阵

    递归代码: #include <string> #include <cstring> #include <iostream> #include <stdio. ...

  2. HDU1166 敌兵布阵【树状数组】

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

  3. hdu1166 敌兵布阵

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

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

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

  5. hdu1166敌兵布阵 树状数组裸题

    树状数组裸题 动态更新区间内的点,动态查询区间和 敌兵布阵 ac代码 #include<iostream> #include<algorithm> #include<cs ...

  6. HDU1166 敌兵布阵 单点更新 区间查询

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

  7. HDU1166敌兵布阵

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

  8. hdu1166 敌兵布阵 线段树

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

  9. HDU1166:敌兵布阵

    Problem Description C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了.A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任 ...

  10. 小小线段树 以HDU-1166 敌兵布阵为例

    [异世界情绪]日文翻唱<鳥の詩/鸟之诗> 引个流,情绪的鸟之诗真的好听,听着这个学习效率巨高! 文章目录 前言 一.build函数 演示①和②: 二.add函数 演示③: 三.query函 ...

最新文章

  1. 浏览器是怎样工作的:渲染引擎,HTML解析
  2. 硬中断与软中断的区别!!!
  3. HDU 2393 Higher Math
  4. java不四舍五入_JAVA-四舍五入之坑
  5. 阿德莱德大学计算机科学学士收费,2017阿德莱德大学研究生学费
  6. java connection 共享_java 使用HttpURLConnection发送数据简单实例
  7. dataframe 修改某列_python dataframe操作大全数据预处理过程(dataframe、md5)
  8. 别再用Else语句写代码了!
  9. java中aop和aoc的区别_AOC与AOP的区别
  10. C++并发与多线程(五)互斥量,atomic、与线程池
  11. 组合模式Composite
  12. 190717每日一句
  13. c++聊天机器人——简单版
  14. 我是 SPI,我让框架更加优雅了!
  15. GitHub代理设置
  16. 全球及中国汽车零部件用模塑料行业盈利预测及投资前景分析报告2021年版
  17. 无代码开发平台 有哪些?
  18. java翁恺MOOC每周编程题
  19. hexo yilia主题添加评论系统详细教程
  20. 盛金公式(一元三次方程的解)

热门文章

  1. .net 后台 下载 图片_特殊的 “图片软件” !
  2. Django(三)框架之第二篇
  3. [JSON].valueOf( keyPath )
  4. 通过kubeadm安装kubernetes 1.7文档记录[docker容器方式]
  5. 使用EF Oracle实现DevExpress绑定大数据的ServerMode模式
  6. 《c陷阱与缺陷》笔记--注意边界值
  7. SQL Server 2005/2008 导入导出数据常见报错
  8. 类似flashget的浮动窗口的实现
  9. python使用telnet远程连接linux系统读取信息_Linux服务笔记之一:Telnet 远程登录
  10. 微小宝公众号排行榜_排行榜 | 山西省高校、高职中专微信公众号周数据排行榜...