hdu 1754 I Hate It 线段树

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

I Hate It,题目链接 click here.
Problem Description

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

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

Input

本题目包含多组测试,请处理到文件结束。
在每个测试的第一行,有两个正整数 N ( 0~200000 ) 和 M (0~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

2007省赛集训队练习赛(6)_linle专场

Recommend

lcy | We have carefully selected several similar problems for you: 1698 1542 1394 2795 1540

简单的线段树区间查询和单点更新.看了这个学的,真的写得很不错.他的代码风格感觉简单明了,有些东西发掘出来很好用.因为发的时间有点长了,这道题我试了一下他的代码是超时的,就把查询函数Query改了一下,就过了.
数据结构专题—线段树,原文链接,click here.

#include<stdio.h>
#include<string>
#include<string.h>
#include<algorithm>
#include<iostream>
#include<math.h>
#include<map>
using namespace std;
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
const int maxn = 200005;
int tree[maxn<<2];
//上浮,更新当前最值;
void pushup(int rt)
{
    tree[rt]=max(tree[rt<<1],tree[rt<<1|1]);
}
//建树;
void build(int l,int r,int rt)
{
    if(r==l)
    {
        scanf("%d",&tree[rt]);
        return;
    }
    int m=(l+r)>>1;
    build(lson);
    build(rson);
    pushup(rt);
}
//更新;
void update(int q,int charge,int l,int r,int rt)
{
    if(l==r)
    {
        tree[rt]=charge;
        return;
    }
    int m=(l+r)>>1;
    if(q<=m)
        update(q,charge,lson);
    else
        update(q,charge,rson);
    pushup(rt);
}
//查询; L,R为查询区间;
int  query(int L,int R,int l,int r,int rt)
{
    if(L<=l&&r<=R)
        return tree[rt];
    int m=(l+r)>>1;
    int mix = 0;
    if(R<=m)
        return query(L,R,lson);
    else if(L>m)
        return query(L,R,rson);
    else
    {
        mix=max(mix,query(L,m,lson));
        mix=max(mix,query(m+1,R,rson));
        return mix;
    }
    /*
    这个查询的判断会超时,上边的更严谨一点.
    if(L<=m)
        mix=max(mix,query(L,R,lson));
    else
        mix=max(mix,query(L,R,rson));
    */
}
int main()
{
    int n,m,a,b;
    char s[5];
    while(~scanf("%d%d",&n,&m))
    {
        build(1,n,1);
        while(m--)
        {
            scanf("%s%d%d",s,&a,&b);
            if(s[0]=='Q')
                printf("%d\n",query(a,b,1,n,1));
            else
                update(a,b,1,n,1);
        }
    }
    return 0;
}
数字锁相环的原理与FPGA实现 数字锁相环是锁相环电路的全数字实现。锁相环电路能够实现对输入信号的相位进行跟踪,进而在噪声中提取纯净的有用信号。以上就是今天要讲的内容,本文简单地介绍了锁相环的原理,然后,在Vivado仿真平台上,通过verilog做仿真验证。最终仿真结果能够实现锁定,但锁定时间较长,表明参数仍可做调整。 阅读详情

相关推荐

2022年电赛E题声源定位跟踪系统

电赛声源定位

qq_53357019的博客 2万+

HDU 1754 I Hate It 线段树模板

暑假ACM俱乐部训练三周,内容分别是图论基础、区间数据结构、字符串处理。训练题虽说都是类似模板题,但初学的我想弄明白还是有些困难的,经常一道题就坐在那里想半天,但做出来还是非常有成就感。虽然没有在学校训练,夜深人静的时候做题感觉还是挺好的,每天打下一点点基础,有所收获就通过博客记录下来,也方便以后回过头来复习查看。 HDU 1754 I Hate It [题目内容] 很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。 不管你喜不喜欢,现在需要你做的是,就

weixin_46283740的博客 376

Anolis龙蜥内核升级实战:从查询到配置的全流程指南

本文提供了一份详尽的Anolis龙蜥操作系统内核升级实战指南。文章从升级的必要性出发,逐步讲解了升级前的系统检查与备份、从官方源获取正确内核包、分步安装与验证、配置默认启动项以及升级后的功能验证与安全回滚方案。旨在帮助运维人员安全、平稳地完成内核升级,以获取性能提升、新硬件支持及重要的安全漏洞修复。

qq_27496129的博客 571

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): 108841 Accepted Submission(s): 40748 Problem Description 很多学校流行一种比较的习惯。老师们很喜欢询问,从某...

qq_43966202的博客 304

10、X射线聚焦与光学元件技术解析

本文深入解析了X射线聚焦与光学元件技术,重点讨论了椭圆镜的聚焦原理及局限性,多层镜的设计优化及其突破性应用,以及X射线波导的基础理论和模式求解方法。文章还总结了这些技术的优势、局限及其在材料科学、生物学和医学等领域的广泛应用前景。通过理论推导与技术改进,这些光学元件为X射线成像技术的发展提供了重要支撑。

pz890123的博客 121

QEMU源码全解析7 —— QEMU主函数

QEMU源码全解析7 —— QEMU主函数

phmatthaus的专栏 1292

HDU - 1754 I Hate It(线段树)

HDU - 1754 I Hate It(线段树) #include<iostream> using namespace std; const int N =200010; int n,m,s[N]; struct Node { int l,r,v; }tr[N*4]; inline void pushup(int u) { tr[u].v=max(tr[u<<1].v,tr[u<<1|1].v); } inline void build(int u,i

00后的博客 340

EMC中的RE测试与整改

测试主要测试电子、电气设备或系统在正常工作时自身对外界的辐射干扰强度,包括来自电路板、机箱、电缆及连接线等所有部件的辐射骚扰。分为:磁场辐射和。其中后者较为应用普遍。测试频段根据不同标准要求不一致。手机测试的频段主要为30-1000MHZ。需要注意的是设备在进行RE测试时要求尽可能满配置,满负荷的运行。同时RE也是EMC中的难点。

学海无涯的专栏 1670

【线段树】HDU 1754 I Hate It

HDU 1754 I Hate It 单点修改,区间查询 线段树模板题 #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <cmath> #include <cstring> #include <s...

L_X_ 180

【YOLO部署Android安卓手机APP】YOLOv8部署到安卓实时目标检测识别——官方/自训练模型YOLOv8人脸/车辆等目标检测(可自定义更换其他目标)

本文首先讲解如何直接使用官方训练好的模型部署到手机APP进行人脸检测,然后讲解如何修改其他目标进行检测,以车辆检测为例进行讲解如何训练自己的模型部署到手机APP。本文为详细设计/配置文档,包含完整所需的环境配置搭建,项目工程配置步骤等,手把手记录使用pycharm和Android studio的工程开发过程,实现YOLO部署到安卓。实战开发,亲测无误。本项目实现了人脸检测和车辆检测,当然,以此你可以按照本项目开发步骤扩展更换为其他目标进行检测,例如更换为车牌、手势、人脸面部活动、人脸表情、火焰烟雾、行人等

嵌入式阿齐Archie 1万+

基于DeepFashion2和YOLOv12的服装检测系统:从数据集构建到UI界面实现

官方网站:数据集大小: 约80GB(压缩包)包含训练集、验证集和测试集数据集目录结构:text复制下载├── train/└── test/├── image/├── annos/Backbone优化:使用更高效的CSPNet结构Neck增强:引入BiFPN特征金字塔网络Head改进:使用解耦头(Decoupled Head)提升分类和定位精度损失函数:采用CIoU损失和分类Focal Loss训练策略:引入Mosaic数据增强和自适应锚框python复制下载。

YOLO 498

线段树之HDU 1754 I hate it

题目:HDU 1754 I hate it! //Must so #include #define mem(a,x) memset(a,x,sizeof(a)) #define sqrt(n) sqrt((double)n) #define pow(a,b) pow((double)a,(int)b) #define inf 1<<29 #define NN 200006 using names

Must so 517

【Autosar COM】Marvell 88Q5050 以太网交换机驱动技术解析

本驱动实现了对Marvell 88Q5050交换机的全面控制,通过模块化设计满足AUTOSAR规范要求。增加DMA加速机制提升大数据量处理性能实现TSN(时间敏感网络)特性支持引入异步通知机制替代轮询操作增强安全特性,如MACsec支持该驱动架构为车载以太网交换机控制提供了可靠基础,其设计思想可推广到其他车载网络控制器开发中。随着车载网络技术的演进,驱动需持续迭代以支持新特性与更高通信速率需求。

1450

HDU1754 I hate it 线段树模板

题目链接:hdu1754 题意:线段树单点修改和查询区间最大值打模板题。 code: #include <bits/stdc++.h> using namespace std; #define mid ((l+r)>>1) #define lson rt<<1,l,mid #define rson rt<<1|1,mid+1,r const in...

江小举的博客 483

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

线段树/hdu1754 I Hate It

题意   有n个学生一字排开,m个操作:   Q a b 查询[a,b]中分值最高的分,并输出   U a b 把第a个学生的成绩改为b 分析   单点修改的裸线段树 Accepted Code 1 /* 2 PROBLEM:hdu1754 3 AUTHER:Rinyo 4 MEMO:线段树 5 */ 6 7 8...

dkkzxga4442的博客 180

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

HDU1754 I Hate It 线段树单点更新

HDU1754 I Hate It/*线段树单点更新 967MS 3580K */ #include &lt;stdio.h&gt; #include &lt;algorithm&gt; using namespace std; const int MAX=2*1e5+5; int tree[MAX*4]; void read(int &amp;x)//读入优化 { int f=1;x=0...

Qianyri的博客 293

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

HDU1754 I Hate It 线段树

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

DouglasConnor的博客 249

线段树 HDU1754 LG1531 I Hate It

题目 题目链接: HDU1754 LG1531 题解 线段树的板子题。注意两个题不太一样,HDU是多组数据,LG只有一组数据。 AC代码 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> #include<cstdlib> #include<string> #include<queue&gt

Zoybzo想AK 149

HDU 1754 I Hate It(线段树)

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

dipinzhu4111的博客 111

HDU 1754 - I Hate It(线段树)

- HDU 1754 - I Hate It Time limit : 3000 ms | Memory limit : 32768 kB 题意: 有多组测试,每个测试第一行給定两个正整数 n、m,代表学生数和操作数,学生ID从 1 到 n 编号; 第二行有 n 个整数,代表这 n 个学生的初始成绩; 接下来 m 行,每行有一个字符 c(只取‘Q’或‘U’),和两个正整数 A, B; 当 c 为...

Pandora_heart的博客 276

HDU1754.I Hate It(线段树)

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

八百标兵奔北坡的博客 355

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): 44322    Accepted Submission(s): 17422 Problem Description 很多学校流行一种比较的习惯。

ysCover 829

HDU 1754 I Hate It(线段树)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1754  今天刚刚接触线段树,做的第一道入门类型的题,WA四次后,终于过了~ #include #include #include #include #include #include #include #include #include #include #include #i

454

HDU 1754 I Hate It 线段树

I Hate It                                                                  Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)

Houheshuai的专栏 470

【HDU 1754】 I Hate It 线段树

HDU1754 I Hate It Problem Description 很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。 这让很多学生很反感。 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。 Input 本题目...

天才小熊猫的博客 233

hdu1754 I Hate It【线段树】

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

wybooooooooo的博客 194
上一篇: poj 2236 Wireless Network 并查集
下一篇: poj 3468 A Simple Problem with Integers 线段树,区间更新.
落幕丶式
博客等级 码龄11年 2粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值