RMQ
来源:互联网 发布:高达00和高达seed知乎 编辑:程序博客网 时间:2024/06/03 13:27
#include <stdio.h>#include <algorithm>#include <cmath>using namespace std;#define maxN 1000010#define maxM 20#define F(i,j,n)for (int i=j; i<=n; i++)int Max[maxN][maxM],Min[maxN][maxM],Log2[maxN];int n,m;int a[maxN];int ask(int l,int r){int k=Log2[r-l+1];return max(Max[l][k],Max[r-(1<<k)+1][k])- min(Min[l][k],Min[r-(1<<k)+1][k]);}int main(){freopen("RMQ.in","r",stdin);freopen("RMQ.out","w",stdout);while (~scanf("%d%d",&n,&m)){F(i,1,n)scanf("%d",&a[i]);F(i,1,n)Max[i][0]=Min[i][0]=a[i];F(i,2,n)Log2[i]=Log2[i>>1]+1;F(j,1,maxM-2)F(i,1,n-(1<<j)+1){Max[i][j]=max(Max[i][j-1],Max[i+(1<<(j-1))][j-1]);Min[i][j]=min(Min[i][j-1],Min[i+(1<<(j-1))][j-1]);}F(i,1,m){int l,r;scanf("%d%d",&l,&r);printf("%d\n",ask(l,r));}}return 0;}
阅读全文
0 0
- RMQ
- RMQ
- RMQ
- RMQ
- RMQ
- RMQ
- RMQ
- RMQ
- RMQ
- rmq
- RMQ
- RMQ
- RMQ
- RMQ
- RMQ
- RMQ
- RMQ
- RMQ
- IntelliJ IDEA debug调试小结
- hdu6130 Kolakoski 2017多校第七场1011 打表
- 常用的jar包的作用概述
- Drools 规则引擎----向领域驱动进步(五)
- Quartz---Java定时任务调度工具
- RMQ
- Ajax介绍1
- 怎么从Chrome浏览器中导出扩展程序为crx文件?
- KCF算法学习笔记
- H5面试——如何阻止事件冒泡和默认事件
- ${pageContext.request.contextPath}访问相关的问题
- Evaluate Reverse Polish Notation问题及解法
- Builder模式设置AlertDialog字体大小、颜色等属性
- Kotlin学习笔记(三)---Kotlin密封类