POJ 3264 Balanced Lineup 简单RMQ
题目:http://poj.org/problem?id=3264
给定一段区间,求其中最大值与最小值的差。
#include <stdio.h>
#include <algorithm>
#include <math.h> int dpMin[][], dpMax[][]; int RMinQ(int l, int r)
{
int k = log(1.0 * r-l+)/log(2.0);
return std::min(dpMin[l][k], dpMin[r-(<<k)+][k]);
} int RMaxQ(int l, int r)
{
int k = log(1.0 * r-l+)/log(2.0);
return std::max(dpMax[l][k], dpMax[r-(<<k)+][k]);
} int main()
{
int n, m;
scanf("%d %d", &n, &m);
for(int i = ; i <= n; i++)
{
scanf("%d", &dpMin[i][]);
dpMax[i][] = dpMin[i][];
}
for(int j = ; (<<j) <= n; j++)
{
for(int i = ; i + (<<j) - <= n; i++)
{
dpMax[i][j] = std::max(dpMax[i][j-], dpMax[i+(<<(j-))][j-]);
dpMin[i][j] = std::min(dpMin[i][j-], dpMin[i+(<<(j-))][j-]);
}
}
int x, y;
while(m--)
{
scanf("%d %d", &x, &y);
printf("%d\n", RMaxQ(x, y) - RMinQ(x, y));
}
return ;
}
POJ 3264 Balanced Lineup 简单RMQ的更多相关文章
- poj 3264 Balanced Lineup(RMQ裸题)
Balanced Lineup Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 43168 Accepted: 20276 ...
- POJ 3264 Balanced Lineup(RMQ)
点我看题目 题意 :N头奶牛,Q次询问,然后给你每一头奶牛的身高,每一次询问都给你两个数,x y,代表着从x位置上的奶牛到y位置上的奶牛身高最高的和最矮的相差多少. 思路 : 刚好符合RMQ的那个求区 ...
- (简单) POJ 3264 Balanced Lineup,RMQ。
Description For the daily milking, Farmer John's N cows (1 ≤ N ≤ 50,000) always line up in the same ...
- Poj 3264 Balanced Lineup RMQ模板
题目链接: Poj 3264 Balanced Lineup 题目描述: 给出一个n个数的序列,有q个查询,每次查询区间[l, r]内的最大值与最小值的绝对值. 解题思路: 很模板的RMQ模板题,在这 ...
- POJ 3264 Balanced Lineup 【ST表 静态RMQ】
传送门:http://poj.org/problem?id=3264 Balanced Lineup Time Limit: 5000MS Memory Limit: 65536K Total S ...
- poj 3264 Balanced Lineup (RMQ)
/******************************************************* 题目: Balanced Lineup(poj 3264) 链接: http://po ...
- POJ - 3264 Balanced Lineup (RMQ问题求区间最值)
RMQ (Range Minimum/Maximum Query)问题是指:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j<=n),返回数列A中下标在i,j里的最小(大)值,也就 ...
- POJ 题目3264 Balanced Lineup(RMQ)
Balanced Lineup Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 39046 Accepted: 18291 ...
- POJ 3264 Balanced Lineup【线段树区间查询求最大值和最小值】
Balanced Lineup Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 53703 Accepted: 25237 ...
随机推荐
- rsync服务安装
1. rsync是开源的项目,首先去官网上下载安装包.下载地址 http://rsync.samba.org/ftp/rsync/src/ 这边我下载的是3.1.0.tar.gz 解压到/opt/r ...
- android优化(json工具,message新建/传递,avtivity深入学习视频)
1,在线json校验工具:www.bejson.com 2, 在handler中经常使用的 message的传递上,message.what使用静态量 . private static final i ...
- Linux 的启动流程-阮一峰
http://www.ruanyifeng.com/blog/2013/08/linux_boot_process.html
- oracle学习----逻辑读
1.物理读 当数据块第一次读取到,就会缓存到buffer cache 中,而第二次读取和修改该数据块时就在内存buffer cache 清空数据缓冲区 SQL> alter session se ...
- Java基础知识强化之集合框架笔记74:各种集合常见功能 和 遍历方式总结
1. Collection add() remove() contains() iterator() size() 遍历: 增强for 迭代器 |--List get() 遍历: 普通for |--S ...
- html5标签兼容ie6,7,8
注册博客园已经三年了,这三年一直在忙,没时间写博文.也许是忙,也许是懒吧!当然这三年发生了很多事,我也从开发人员转变为前端人员. 是时候对所学的,所用的知识做一下沉淀了.就从这一篇开始吧! html5 ...
- Python 学习开发笔记之IO操作
文件或者目录的路径操作 获取当前工作目录 import os import sys cwd = os.getcwd() 路径的拼接 os.path.join(path,"dir") ...
- linux-ssh远程后台执行脚本-放置后台执行问题(转)
写了一个监控负载的小脚本(死循环,测试结束后再kill对应进程),因需要监控多台服务器,所以在一台服务器上使用ssh统一执行脚本遇到问题:使用ssh root@172.16.146.20 '/usr/ ...
- Redis 集群常见问题
Redis集群相关问题 1:远程连接问题 远程连接保护模式下,需要做一些配置.
- linux字符过滤
1 案例一:取eth0的IP地址 方法一:通过cut方法过滤 [root@baiguin ~]# ifconfig eth0|grep "inet addr:"|cut -d & ...