P2880 [USACO07JAN]平衡的阵容Balanced Lineup
P2880 [USACO07JAN]平衡的阵容Balanced Lineup
RMQ
RMQ模板题
静态求区间最大/最小值
(开了O2还能卡到rank9)
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cctype>
using namespace std;
template <typename T> inline T min(T &a,T &b) {return a<b ?a:b;}
template <typename T> inline T max(T &a,T &b) {return a>b ?a:b;}
template <typename T> inline void read(T &x){
char c=getchar(); x=;
while(!isdigit(c)) c=getchar();
while(isdigit(c)) x=(x<<)+(x<<)+(c^),c=getchar();
}
int wt[];
template <typename T> inline void output(T x){
if(!x) {putchar(); return ;}
int l=;
while(x) wt[++l]=x%,x/=;
while(l) putchar(wt[l--]+);
}
int n,m,mxd[][],mnd[][],log[];
inline int query(int l,int r){ //查询
int k=log[r-l+];
int r1=max(mxd[k][l],mxd[k][r-(<<k)+]);
int r2=min(mnd[k][l],mnd[k][r-(<<k)+]);
return r1-r2;
}
int main(){
read(n); read(m); int q1,q2; log[]=-;
for(int i=;i<=n;++i) read(mxd[][i]),mnd[][i]=mxd[][i],log[i]=log[i>>]+; //log值预处理
for(int i=;(<<i)<=n;++i)
for(int j=;j+(<<(i-))<=n;++j){
mxd[i][j]=max(mxd[i-][j],mxd[i-][j+(<<(i-))]);
mnd[i][j]=min(mnd[i-][j],mnd[i-][j+(<<(i-))]);
} //普通的RMQ处理
for(int i=;i<=m;++i) read(q1),read(q2),output(query(q1,q2)),putchar('\n');
return ;
}
P2880 [USACO07JAN]平衡的阵容Balanced Lineup的更多相关文章
- ST表 || RMQ问题 || BZOJ 1699: [Usaco2007 Jan]Balanced Lineup排队 || Luogu P2880 [USACO07JAN]平衡的阵容Balanced Lineup
题面:P2880 [USACO07JAN]平衡的阵容Balanced Lineup 题解: ST表板子 代码: #include<cstdio> #include<cstring&g ...
- P2880 [USACO07JAN]平衡的阵容Balanced Lineup(RMQ的倍增模板)
题面:P2880 [USACO07JAN]平衡的阵容Balanced Lineup RMQ问题:给定一个长度为N的区间,M个询问,每次询问Li到Ri这段区间元素的最大值/最小值. RMQ的高级写法一般 ...
- 【洛谷】P2880 [USACO07JAN]平衡的阵容Balanced Lineup(st表)
题目背景 题目描述: 每天,农夫 John 的N(1 <= N <= 50,000)头牛总是按同一序列排队. 有一天, John 决定让一些牛们玩一场飞盘比赛. 他准备找一群在对列中为置连 ...
- 洛谷—— P2880 [USACO07JAN]平衡的阵容Balanced Lineup
https://www.luogu.org/problemnew/show/P2880 题目背景 题目描述: 每天,农夫 John 的N(1 <= N <= 50,000)头牛总是按同一序 ...
- 【luogu P2880 [USACO07JAN]平衡的阵容Balanced Lineup】 题解
题目链接:https://www.luogu.org/problemnew/show/P2880 是你逼我用ST表的啊qaq #include <cstdio> #include < ...
- 洛谷P2880 [USACO07JAN]平衡的阵容Balanced Lineup 题解
题目链接: https://www.luogu.org/problemnew/show/P2880 分析: ST表实现即可,一个最大值数组和最小值数组同时维护 代码: #include<cstd ...
- Luogu P2880 [USACO07JAN]平衡的阵容Balanced Lineup (ST表模板)
传送门(ST表裸题) ST表是一种很优雅的算法,用于求静态RMQ 数组l[i][j]表示从i开始,长度为2^j的序列中的最大值 注意事项: 1.核心部分: ; (<<j) <= n; ...
- [USACO07JAN]平衡的阵容Balanced Lineup
[USACO07JAN]平衡的阵容Balanced Lineup 题目描述 For the daily milking, Farmer John's N cows (1 ≤ N ≤ 50,000) a ...
- [USACO07JAN]平衡的阵容Balanced Lineup BZOJ 1699
题目背景 题目描述: 每天,农夫 John 的N(1 <= N <= 50,000)头牛总是按同一序列排队. 有一天, John 决定让一些牛们玩一场飞盘比赛. 他准备找一群在对列中为置连 ...
随机推荐
- 专访|HPE软件部中国区总经理李时:HPE引领IT战略新形态
2016年7月22日,「HPE&msup软件技术开放日」将在上海举办,msup携手HPE揭秘全球测试中心背后的12条技术实践. 李时:HPE软件部中国区总经理,将在本次开放日带来<HP ...
- Sublime Text3注册激活和部分配置
1. 更改hosts文件(参照:sublime text3 破解方法,亲测有效) windows系统的hosts文件在C:\Windows\System32\drivers\etc在hosts文件中 ...
- ZOJ 3993 - Safest Buildings - [数学题]
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3993 题意: 给出n幢建筑,每个都以一个点表示,给出点坐标. 有 ...
- UVA 11776 - Oh Your Royal Greediness! - [贪心/模拟]
题目链接:https://cn.vjudge.net/problem/UVA-11776 题意: 给出数字n(0<=n<=1000),代表有n个农民,接下来有n行,每行两个数字S和E代表这 ...
- wf-pagination-javascript 分页
1 <?php isset($_REQUEST['form_single_page_num']) && !empty($_REQUEST['form_single_page_nu ...
- jmxtrans
jmxtrans more tomcat.json { "servers" : [ { "port" : "12345", ...
- 《Nginx - 变量》- log_format/核心变量
一:log_format - 概述 - log_format 用于管理 Nginx 的详细信息,日志管理等信息,很多都是基于这个来实现. - 可配置参数 $remote_addr 客户端地址 $rem ...
- LoadRunner-迭代和并发设置
迭代:指运行一次脚本时某段代码块(action)循环执行的次数,串行执行 并发:指同时运行脚本的次数,并行执行(多个用户同时跑) 以下是用例和对应的相关设置 Iterations是在Vuser Gen ...
- Jquery获取元素的位置
$(".curr_play").position().left //元素距离父级元素左侧位置 $(".curr_play").offset().left //元 ...
- cas sso原理
以下转载至https://blog.csdn.net/javaloveiphone/article/details/52439613 从结构上看,CAS包含两个部分:CAS Server 和CAS C ...