博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RMQ求区间最大最小值
阅读量:5029 次
发布时间:2019-06-12

本文共 820 字,大约阅读时间需要 2 分钟。

#include
#include
#include
#define N 50005using namespace std;int maxx[N][20],minn[N][20],a[N];int ST(int n){ for(int i=1;i<=n;i++) { maxx[i][0]=a[i]; minn[i][0]=a[i]; } for(int j=1;(1<
<=n;j++) { for(int i=1;i+(1<
<=n;i++) { maxx[i][j]=max(maxx[i][j-1],maxx[i+(1<<(j-1))][j-1]); minn[i][j]=min(minn[i][j-1],minn[i+(1<<(j-1))][j-1]); } }}int main(){ int n,q,lf,rg,mx,mn; cin>>n>>q; for(int i=1;i<=n;i++) { scanf("%d",&a[i]); } ST(n); for(int i=1;i<=q;i++) { scanf("%d %d",&lf,&rg); int k=log2(rg-lf+1); mx=max(maxx[lf][k],maxx[rg-(1<

 

转载于:https://www.cnblogs.com/Leozi/p/10835055.html

你可能感兴趣的文章
tp5.0中及其常用方法的一些函数方法(自己看)和技巧(不断添加中)
查看>>
美团推荐算法实践
查看>>
自定义注解使用
查看>>
监听3
查看>>
七个人生工具:SWOT、PDCA、6W2H、SMART、WBS、时间管理、二八原则
查看>>
BZOJ 2120 树状数组套平衡树
查看>>
【ARM-Linux开发】Linux内存管理:ARM Memory Layout以及mmu配置
查看>>
机器学习技法总结(六)Decision Tree Hypothesis
查看>>
Tracking-Learning-Detection (TLD算法总结)
查看>>
07 数据结构
查看>>
开发日志
查看>>
基于深度及广度优先搜索的迷宫问题的演示
查看>>
Nginx模块详解
查看>>
使用SQLiteHelper创建数据库并插入数据
查看>>
ubuntu用户及用户组文件信息
查看>>
你学过的东西总会在某个时候用到
查看>>
关于Python开发小程序的随笔path4
查看>>
jQuery插件:跨浏览器复制jQuery-zclip
查看>>
POJ 3468 A Simple Problem with Integers(线段树 成段增减+区间求和)
查看>>
一个简单的 Jwt Demo
查看>>