题目:http://acm.hdu.edu.cn/showproblem.php?pid=1754

和上一题一样是模板题,就是那道题求得是和,这道求得是最大值:

#include<iostream>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<algorithm>
#include<queue> using namespace std; #define N 201000
#define INF 0xfffffff
#define Lson r<<1
#define Rson r<<1|1 struct Segment
{
int L, R, Max;
int Mid()
{
return (L+R)>>;
}
} a[N<<]; void BuildTree(int r, int L, int R)
{
a[r].L = L;
a[r].R = R;
if(L == R)
{
scanf("%d", &a[r].Max);
return ;
}
BuildTree(Lson, L, a[r].Mid());
BuildTree(Rson, a[r].Mid()+, R); a[r].Max = max(a[Lson].Max, a[Rson].Max);
}
int Query(int r, int L, int R)
{
if(a[r].L == L && a[r].R == R)
return a[r].Max;
if(L > a[r].Mid())
return Query(Rson, L, R);
else if(R <= a[r].Mid())
return Query(Lson, L, R);
else
{
int Max1 = Query(Lson, L, a[r].Mid());
int Max2 = Query(Rson, a[r].Mid()+, R);
return max(Max1 , Max2);
}
}
void Update(int r, int p, int x)
{
if(a[r].L == p && a[r].R == p)
{
a[r].Max = x;
return ;
}
if(p > a[r].Mid())
Update(Rson, p, x);
else
Update(Lson, p, x); a[r].Max = max(a[Rson].Max, a[Lson].Max);
}
int main()
{
int n, m, a, b;
char s[];
while(scanf("%d%d",&n, &m) != EOF)
{
BuildTree(, , n);
for(int i=; i<m; i++)
{
scanf("%s%d%d", s, &a, &b);
if(s[] == 'Q')
printf("%d\n", Query(, a, b));
else
Update(, a, b);
}
}
return ;
}

最新文章

  1. [机器学习] Ubuntu 软件源更新(校园网)以及问题总结
  2. Ansible-Tower快速入门-4.以超级用户帐号登录【翻译】
  3. LeetCode题解-----First Missing Positive
  4. 护眼色的RGB值
  5. gif修改背景透明
  6. [Node.js] Exporting Modules in Node
  7. Android中使用ListView绘制自定义表格(2)
  8. Linux系统编程(5)——文件与IO之mmap函数
  9. [推荐] 查看网站使用的JS框架
  10. 解读web服务器与php的工作原理
  11. jsp的语法
  12. logback日志丢失的情况之一
  13. Android开发入门经典实例
  14. n个随机变量中第k小值的期望
  15. 11.8java课后动手动脑
  16. Scala的高级特性
  17. linux进程的几个状态
  18. rvm的安装, 使用rvm, 安装ruby, 以及gem的使用 (转)
  19. activiti学习-用户与用户组
  20. /proc/sys 子目录的作用

热门文章

  1. FFmpeg X264的preset和tune
  2. 【整理】LINUX下使用CMAKE安装MYSQL
  3. java框架----&gt;quartz的使用(一)
  4. 二分法求平方根(Python实现)
  5. 安卓APP动态调试-IDA实用攻略
  6. 简单了解如何使用vue-router和vue-resource
  7. apache反向代解决绝对路径可能出现的问题
  8. 【BZOJ1004】[HNOI2008]Cards Burnside引理
  9. 使用shell数据处理数据实例①-------手把手教学版
  10. lombok 转载