HDU 1754 I Hate It(线段树:单点更新,求区间最大值)

Voltus功耗分析——读入Innovus数据/cpf/spef文件 检查的内容:物理库、时序库、网表、I/Os、tie-high&tie-low pins、电源/地pins。设计数据(LEF/DEF/netlist)、cpf文件、SPEF文件。方法二:定义每个 power/ground net's 电压。4.设计数据检查(design sanity check)方法一:读入.dat数据。方法二:读入def文件。方法一:读入CPF文件。 阅读详情

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


I Hate It

Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 51627    Accepted Submission(s): 20228


Problem Description
很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。
这让很多学生很反感。

不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。
 

Input
本题目包含多组测试,请处理到文件结束。
在每个测试的第一行,有两个正整数 N 和 M ( 0<N<=200000,0<M<5000 ),分别代表学生的数目和操作的数目。
学生ID编号分别从1编到N。
第二行包含N个整数,代表这N个学生的初始成绩,其中第i个数代表ID为i的学生的成绩。
接下来有M行。每一行有一个字符 C (只取'Q'或'U') ,和两个正整数A,B。
当C为'Q'的时候,表示这是一条询问操作,它询问ID从A到B(包括A,B)的学生当中,成绩最高的是多少。
当C为'U'的时候,表示这是一条更新操作,要求把ID为A的学生的成绩更改为B。
 

Output
对于每一次询问操作,在一行里面输出最高成绩。
 

Sample Input
  
5 6 1 2 3 4 5 Q 1 5 U 3 6 Q 3 4 Q 4 5 U 2 9 Q 1 5
 

Sample Output
  
5 6 5 9
Hint
Huge input,the C function scanf() will work better than cin
 

Author
linle
 

Source


 这是我做的第二道线段树,和敌兵布阵几乎一模一样。以下链接是敌兵布阵,有详细解释。。。

                     链接:http://blog.youkuaiyun.com/hellohelloc/article/details/47731551


#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
const int maxn=200020;
int n,m;
struct node{
  int left,right,miv;
}t[4*maxn];
void build(int k,int l,int r)//建立线段树
{
    t[k].left=l;t[k].right=r;
    if(l==r){
        scanf("%d",&t[k].miv);
        return;
    }
    int mid=(l+r)>>1;
    build(k<<1,l,mid);
    build(k<<1|1,mid+1,r);
    t[k].miv=max(t[k<<1].miv,t[k<<1|1].miv);//记录每个节点的管辖段内最大值
}
void update(int k,int x,int val)//单点更新
{
    int l=t[k].left,r=t[k].right;
    if(x==l && x==r){
        t[k].miv=val;
        return;
    }
    int mid=(l+r)>>1;
    if(x<=mid) update(k<<1,x,val);
    else update(k<<1|1,x,val);
    t[k].miv=max(t[k<<1].miv,t[k<<1|1].miv);维护节点的最大值
}
int query(int k,int x,int y)//区间查询
{
    int l=t[k].left,r=t[k].right;
    int ans=-1;
    if(x<=l && r<=y){
        return t[k].miv;
    }
    int mid=(l+r)>>1;
    if(x<=mid) ans=max(ans,query(k<<1,x,y));
    if(y>mid) ans=max(ans,query(k<<1|1,x,y));
    return ans;
}
int main()
{
    char op[5];
    int a,b;
    while(scanf("%d %d",&n,&m) !=EOF)
    {
        memset(t,0,sizeof(t));//初始化,为了避免第二次样例时出错
        build(1,1,n);
        while(m--)
        {
            scanf("%s%d%d",op,&a,&b);
            if(op[0]=='Q') printf("%d\n",query(1,a,b));
            else update(1,a,b);
        }
    }
    return 0;
}


OpenGL ES 3.0 开发(一):绘制一个三角形 该原创文章首发于微信公众号:字节流动 什么是 OpenGLES OpenGLES 全称 OpenGL for Embedded Systems ,是三维图形应用程序接口 OpenGL 的子集,本质上是一个跨编程语言、跨平台的编程接口规范,主要应用于嵌入式设备,如手机、平板等。由科纳斯(Khronos)组织定义和推广,科纳斯是一个图形软硬件行业协会,该协会主要关注图形和多媒体方面的开放标准。 O... 阅读详情

相关推荐

mysql笔记:23. 在Mac上安装与卸载MySQL

MySQL对Mac电脑的适配十分强大,再加上Mac本身就是Unix操作系统演化而来的,所以在Mac上安装MySQL的方式有多种。常见的方法有如下三种:DMG、brew、TAR。介绍这些方法前,我们先了解下MySQL安装文件的下载。

斌斌(Java) 2249

HDU 1754 I Hate It(线段树 单点更新 区间最大值)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1754 题意就是qiu

顺便A道题 3972

Crossbar RRAM技术解析:从1TnR架构到存储革命

非易失性存储器(NVM)是数据存储的核心技术,其原理基于物理状态的稳定改变以实现数据持久化。阻变存储器(RRAM)作为一种新兴NVM,利用导电细丝在介质层中的形成与断裂实现数据存储,具有高速、低功耗和结构简单的优势。在工程实践中,RRAM面临潜行路径电流等挑战,而Crossbar提出的1TnR架构通过引入共享晶体管有效解决了这一问题,在保证性能的同时提升了集成密度。该技术与CMOS工艺兼容,支持后端集成与多层堆叠,为高密度存储和嵌入式应用提供了新的解决方案。结合当前行业对高能效、高密度存储的需求,RRAM在

weixin_42523104的博客 320

【线段树-单点更新区间最大值】hdu 1754 - I Hate It

I Hate It Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 79015    Accepted Submission(s): 30354 Problem Description 很多学校流行一种比较的习惯。

Hi_jiaxinwei的博客 436

从零到一:手把手教你用Python+LangChain搭建企业级RAG知识库(附避坑指南)

本文为开发者提供了一份详尽的实战指南,手把手教你使用Python和LangChain框架从零构建企业级RAG知识库。内容涵盖环境搭建、文档处理、向量化检索、提示工程及生产部署等核心环节,并重点分享了文档分割、检索优化等关键避坑经验,旨在帮助读者打造稳定、高效且易于维护的智能知识中枢。

weixin_29058331的博客 398

解密Android相机框架:从HAL到应用层的全链路解析

本文深入解析Android相机框架的全链路架构,从应用层到硬件抽象层(HAL)再到驱动层,详细介绍了CamX-CHI架构的设计哲学与实战应用。通过HAL3接口、V4L2交互机制及Camera2 API的最佳实践,帮助开发者优化相机性能,解决多摄切换、预览卡顿等常见问题,提升成像效率与稳定性。

weixin_29238147的博客 408

HDU-1754 I Hate It(线段树单点更新 + 维护区间最大值)

不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。,将 id 为 3 的学生的成绩改为 6,改完之后的 5 个数为。,将 id 为 2 的学生的成绩改为 9,改完之后的 5 个数为。,询问区间 [1,5] 的最大值,输出的结果为 5。,询问区间 [3,4] 的最大值,输出的结果为 6。,询问区间 [4,5] 的最大值,输出的结果为 5。,询问区间 [1,5] 的最大值,输出的结果为 9。)的学生当中,成绩最高的是多少。

zaiyang遇见 323

手把手教你配置MCAL中的CAN模块:从基础参数到实战避坑指南

本文提供了一份详尽的MCAL CAN模块配置指南,涵盖从基础参数设置到实战避坑的全过程。文章深入解析了CAN控制器核心参数、硬件对象配置、数据流处理及常见问题排查,并结合源码分析,帮助嵌入式开发者构建稳定高效的CAN通信链路,是汽车电子领域通信开发的实用参考。

weixin_29165465的博客 336

HDU 1754 B I Hate It 线段树 单点更新 区间最大值 模板

很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。  这让很多学生很反感。  不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。 Input 本题目包含多组测试,请处理到文件结束。  在每个测试的第一行,有两个正整数 N 和 M ( 0 学生ID编号分别从1编到N。  第二

深海沧澜的博客 243

普通人如何上岸华为OD-面试总结

总共有3道算法题,100分值的两道,200分值的一道,不同的毕业院校和专业,通过机试的分值不一样,最少需要150分通过,提前和hr联系,了解自己需要多少分通过。重中之重:哪怕你是背的题库,也请你一定不要直接抄原来的,最好是变更下方法名,否则会判定你重复率过高,从而失去后面的面试机会(实在是不会做再用此方法,凑分数所用,面试官能看到你的代码,会影响你的面试评价)本人女,所以还问道了婚育计划,有对象这点可以说,没有问题,但是如果可以的话,生孩子的时间,可以给hr说这几年不考虑。如果说没有难题,直接就挂了。

weixin_47767264的博客 5452

保姆级YOLOv8改进 | 基于DWRSeg扩张式残差机制的小目标检测优化(附修改后的C2f与Bottleneck模块)

DWRSeg机制:通过动态权重调整和扩张卷积有效提升了小目标的检测能力。C2f和Bottleneck模块修改:通过集成DWRSeg模块,增强了特征提取和残差学习能力。实验结果:在多个应用场景中,改进后的YOLOv8展现了更高的检测精度,特别是在小目标检测中表现突出。

一键难忘的博客 3217

hdu 1754 I Hate It(线段树单点更新求区间最大值)

Problem Description 很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。   Input 本题目包含多组测试,请处理到文件结束。 在每个测试的第一行,有两个正整数 N

ZAQ的博客 503

逆向工具:一文讲述 Ghidra 的详细使用

Ghidra是由NSA开源的一款功能强大的逆向工程框架,支持多平台、多架构和多种文件格式分析。本文详细介绍了Ghidra的核心优势、安装配置方法、主界面功能模块,并通过一个CrackMe示例演示了完整的逆向分析流程。文章还讲解了高级功能如交叉引用、控制流图分析、数据类型重建和脚本自动化等,最后提供了常见文件格式的分析技巧。作为IDA Pro的免费替代方案,Ghidra适合个人学习、教学和中小项目使用。(149字)

数据知道的博客 4344

HDU1754 I Hate It(线段树单点更新,区间最大值,zkw线段树)

题目: I Hate It Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 73750    Accepted Submission(s): 28451 Problem Description 很多学校流

riba2534的博客 908

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

B - I Hate It HDU - 1754 线段树区间最大值板子(单点更新,区间最大)

  第一次打 改了半天 各种小错误 难受 1 #include<cstdio> 2 #include<iostream> 3 using namespace std; 4 const int maxn=2000000+7; 5 int a[maxn],n; 6 struct Node{ 7 int l,r; 8 ...

azmkinbug41973327的博客 161

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

HDU - 1754 I Hate It (线段树--单点更新,区间最大值)

很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。 Input 本题目包含多组测试,请处理到文件结束。 在每个测试的第一行,有两个正整数 N 和 M ( 0<N<=200000,0<M<5...

点点滴滴 183

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

HDU-1754 I Hate It【线段树,单点更新,区间最大值】

很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。  这让很多学生很反感。  不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。 Input 本题目包含多组测试,请处理到文件结束。  在每个测试的第一行,有两个正整数 N 和 M ( 0&lt;N&lt;=200000,0&lt;M&lt;5...

HPUZJH 186

【HDU - 1754】I Hate It (线段树模板 单点覆盖更新+区间最大值查询)

题干: 很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。  这让很多学生很反感。  不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。 Input 本题目包含多组测试,请处理到文件结束。  在每个测试的第一行,有两个正整数 N 和 M ( 0&lt;N&lt;=200000,0&lt;M...

xuanweiace的博客 454

HDU 1754 I Hate It 线段树 单点更新 区间最大值

1 #include<iostream> 2 #include<string> 3 #include<algorithm> 4 #include<cstdlib> 5 #include<cstdio> 6 #include<set> 7 #include<map> 8 #inc...

weixin_30387423的博客 149

(线段树入门--建树、单点更新、区间求最大值)hdu1754 I Hate It

传送门:hdu1754 I hate it   Problem Description 很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。     Input 本题目包含多组测试,请处理到文件结束。 在每个测...

279

HDU-1754-I Hate It(线段树 单点更新 区间最大值)

I Hate It Time Limit: 9000/3000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 100728Accepted Submission(s): 37914 Problem Description 很多学校流行一种比较的习惯。老师们很喜欢询...

weixin_33970449的博客 132

HDU - I Hate It(线段树)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1754 Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Description 很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学...

ityanger的技术栈 2720

线段树系列-hdu-1754-I Hate It-单点修改求区间最值

简单的单点修改,求区间最值 #include #define max_N 800000 using namespace std; int ans; //求和 int big; //求最大值 struct seg{ int l,r,v,maxn; }tree[max_N]; void build(int l,int r,int k) { tree[k].

lyc1635566ty的博客 1404

单点更新查询区间最大值 hdu1754 I hate it

hdu1754 I hate it  题目大意:给你N个数,M个操作,操作分两类。(1)"Q A B“,查询区间[A,B]内的最大值。(2)"U A B",将第A个数的值改成B。      解题思路:O(-1) #include #include using namespace std; #define lz l , m , rt << 1 #define rz m + 1

ACM_10000h的专栏 599

kuangbin 线段树 - HDU - 1754 I Hate It (线段树单点修改模板题)

kuangbin 线段树 - HDU - 1754 I Hate It (线段树单点修改模板题) 很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。 Input 本题目包含多组测试,请处理到文件结束。 在每个测试的第一行,有两个正整数 N 和 M ( 0<N<=200000,0<M<5000),分别

ACM-ICPC 现役(铜牌) Codeforces Rating: 2172 208

HDU1754I Hate It(线段树维护区间最大值)

题目链接:hdu1754 题目大意:给n个数以及q组操作,操作可能是查询或者更新。问区间最大值或更新。 解题思路:线段树裸题。看代码 AC代码(可能是写不好2800ms卡时限过得找个快点得板子) #include &lt;cstdio&gt; #include &lt;cstring&gt; #include &lt;cstdlib&gt; #include &lt;cmath&gt; #inc...

小胡同的诗 297
上一篇: POJ 3685 Matrix(二分套二分)
下一篇: HDU 1394 Minimum Inversion Number(线段树:单点更新,求逆序数)
hellohelloC
博客等级 码龄12年 15粉丝 107原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值