数据结构 线段树 HDU 1754I Hate It(单点更新)
来源:互联网 发布:服务贸易数据包括哪些 编辑:程序博客网 时间:2024/05/17 03:36
题意:给n门课,m次询问。
Q,a,b为询问,[a,b] ;’
U,a,b为更新第a个点,更新为b
题解:单点更新,线段树
#include <stdio.h>#include <string.h>#include <cstring>#include <algorithm>#include <iostream>using namespace std;const int N=200005;int Max[N<<2];void PushUP(int rt){//比较出树下面左边和下面右边哪个大 Max[rt]=max(Max[rt<<1],Max[rt<<1|1]);} void build(int l,int r,int rt){if(l==r){scanf("%d",&Max[rt]);return ;}int m=(l+r)>>1;build(l,m,rt<<1);build(m+1,r,rt<<1|1);PushUP(rt);}void update(int p,int ss,int l,int r,int rt){//p为要改的位置,ss为要改的值 if(l==r){//找到叶子 ,更新 Max[rt]=ss;return ;}int m=(l+r)>>1;if(p<=m) update(p,ss,l,m,rt<<1);else update(p,ss,m+1,r,rt<<1|1);//每次都向上更新新的最大值PushUP(rt); }int query(int L,int R,int l,int r,int rt){if(L<=l && r<=R){return Max[rt];}int m=(l+r)>>1;int ret=0;if(L<=m) ret=max(ret,query(L,R,l,m,rt<<1));if(R>m) ret=max(ret,query(L,R,m+1,r,rt<<1|1));return ret;}int main(){int n,m; while(~scanf("%d%d",&n,&m)) { build(1,n,1); while(m--){ char tmp[2];//用%s 小技巧,避免回车 int a,b; scanf("%s%d%d",&tmp,&a,&b); if(tmp[0]=='Q'){ printf("%d\n",query(a,b,1,n,1)); } if(tmp[0]=='U'){ update(a,b,1,n,1); } } } return 0;}
0 0
- Hdu-1754 I hate it【线段树(单点更新)】
- hdu 1754 I Hate It(线段树,单点更新)
- HDU 1754 - I Hate It (线段树 单点更新)
- hdu 1754 I Hate It(线段树+单点更新)
- HDU 1754 I Hate It (线段树单点更新)
- hdu 1754 I Hate It(线段树单点更新)
- HDU 1754 I Hate It(线段树单点更新)
- 数据结构 线段树 HDU 1754I Hate It(单点更新)
- HDU 1754 I Hate It [线段树-单点更新]
- hdu 1754 I Hate It 线段树 单点更新
- hdu 1754 I Hate It 线段树单点更新
- HDU 1754 I Hate It //线段树单点更新
- hdu 1754 I Hate It 线段树单点更新
- HDU 1754 I Hate It 线段树单点更新
- 线段树单点更新 hdu 1754 I Hate It
- hdu 1754 I Hate It(线段树入门-单点更新)
- hdu 1754 I hate it(线段树单点更新)
- hdu 1754 I Hate It 线段树单点更新
- java_web用户的自动登录模块的实现
- Android中使用Handler造成内存泄露的分析和解决
- 【Qt开发】解决Qt5.7.0中文显示乱码的问题
- 读写文件相关操作
- 编程珠玑第二章习题2.6(1-4)
- 数据结构 线段树 HDU 1754I Hate It(单点更新)
- 新技能get
- 监听器实现网站计数并获取用户信息
- python 多线程与多进程的简单测试比较
- 利用Spring的@Value注解读取配置文件
- shared_ptr
- 玩转Android之数据库框架greenDAO3.0使用指南
- idea部署tomcat启动成功后访问提示404
- Echarts3.0:实现一个页面放多个Echarts图表的方法