RMQ问题模板
来源:互联网 发布:纪念碑谷mac版 编辑:程序博客网 时间:2024/06/05 17:05
#include<bits/stdc++.h>using namespace std;#define MAXN 1000+10int dp[MAXN][MAXN], a[MAXN]; void InitRMQ(int l, int r, int n){ int k = floor((double)log(r-l+1)/log(2)); for (int i = 1; i <= n; ++i) dp[i][0] = a[i]; for (int j = 1; j <= r-l+1; ++j) for (int i = 1; i+(1<<j-1) <= r; ++i) dp[i][j] = max(dp[i][j-1], dp[i+(1<<j-1)][j-1]); }int getmax(int l, int r){ int k = floor((double)log(r-l+1)/log(2)); return max(dp[l][k], dp[r-(1<<k)][k]);}int main(){ int n, q; cin>>n>>q; for (int i = 1; i <= n; ++i) cin>>a[i]; InitRMQ(1, n, n); int l, r; while(q--){ cin>>l>>r; cout<<getmax(l, r)<<endl; } return 0;}
0 0
- RMQ问题模板
- RMQ问题-very easy-打印模板
- rmq 模板
- RMQ模板
- rmq模板
- RMQ 模板
- RMQ 模板
- RMQ 模板
- rmq模板
- RMQ模板
- RMQ模板
- RMQ模板
- RMQ 模板
- RMQ 模板
- 【模板】RMQ
- RMQ模板
- RMQ模板
- RMQ模板
- android LayoutInflater.inflate()的参数及其用法
- [bigdata-34] pyenv + anaconda 4.2 + python3.5+ ubuntu 16.04 安装
- Linux关于目录的二三事
- 2017制定一个小计划
- 关于复制过后的linux虚拟机不能联网及eth0消失解决
- RMQ问题模板
- [HNOI2008] 玩具装箱
- 提高 Java 代码质量
- 在慕课上学习的,HTML和CSS基础学习笔记5
- English Summary(Jan)
- Codeforces 755B-PolandBall and Game
- Peter's Smokes
- BZOJ 3569 询问删除指定的k条边后图是否连通 线性基
- Makefile中的变量使用