题目描写叙述

农夫约翰的 N (1 ≤ N ≤ 50,000) 头奶牛,每天挤奶时总会按相同的顺序站好。

一日。农夫约翰决定为奶牛们举行一个“终极飞盘”比赛。为简化问题。他将从奶牛队列中选出一个连续区间来进行游戏。

只是,參加游戏的奶牛要玩的开心的话就不能在身高上差距太大。

农夫约翰制定了 Q (1 ≤ Q ≤ 200,000) 个预定的參赛组,给出它们的身高 (1 ≤ 身高 ≤ 1,000,000)。对每一个參赛组。他须要你帮助确定组中最高牛和最低牛的身高差。

输入格式

  • 第 1 行: 两个空格隔开的整数,N 和 Q。
  • 第 2..N+1 行: 第 i+1 行包括一个整数表示第 i 头牛的身高。
  • 第 N+2..N+Q+1 行: 两个整数 A 和 B(1 ≤ A ≤ B ≤ N),表示一个从 A 到 B 的參赛组区间。

输出格式

  • 第 1..Q 行: 每行包括一个整数来表示区间上最大身高差。

例子输入

6 3
1
7
3
4
2
5
1 5
4 6
2 2

例子输出

6
3
0
题解:st表练习题。

。
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int n,a,b,q,ffmin[60000][30],ffmax[60000][30];
int in()
{
int x=0;
char ch;
ch=getchar();
while(ch<'0'||ch>'9') ch=getchar();
while(ch>='0'&&ch<='9') x=x*10+ch-'0',ch=getchar();
return x;
}
int main()
{
freopen("lineup.in","r",stdin);
freopen("lineup.out","w",stdout);
scanf("%d%d",&n,&q);
for (int i=1;i<=n;i++)
{
a=in();
ffmin[i][0]=a;ffmax[i][0]=a;
}
for (int j=1;j<=20;j++)
for (int i=1;i<=n;i++)
if (i+(1<<j)-1<=n)
{
ffmin[i][j]=min(ffmin[i][j-1],ffmin[i+(1<<(j-1))][j-1]);
ffmax[i][j]=max(ffmax[i][j-1],ffmax[i+(1<<(j-1))][j-1]);
}
else break;
for (int i=1;i<=q;i++)
{
int k,maxx,minn;
a=in();b=in();
k=(int)(log(b-a+1.0)/log(2.0));
maxx=max(ffmax[a][k],ffmax[b-(1<<k)+1][k]);
minn=min(ffmin[a][k],ffmin[b-(1<<k)+1][k]);
printf("%d\n",maxx-minn);
}
}

【cogs182】【USACO Jan07】均衡队形【st表】的更多相关文章

  1. COGS182 [USACO Jan07] 均衡队形[RMQ]

    182. [USACO Jan07] 均衡队形 ★★   输入文件:lineup.in   输出文件:lineup.out   简单对比时间限制:4 s   内存限制:128 MB 题目描述 农夫约翰 ...

  2. cogs 182. [USACO Jan07] 均衡队形 线段树

    182. [USACO Jan07] 均衡队形 ★★☆   输入文件:lineup.in   输出文件:lineup.out   简单对比时间限制:4 s   内存限制:128 MB 题目描述 农夫约 ...

  3. RMQ——[USACO Jan07] 均衡队形题解

    题目:[USACO Jan07] 均衡队形 描述: 题目描述 农夫约翰的 N (1 ≤ N ≤ 50,000) 头奶牛,每天挤奶时总会按同样的顺序站好.一日,农夫约翰决定为奶牛们举行一个“终极飞盘”比 ...

  4. COGS 182. [USACO Jan07] 均衡队形

    ★★   输入文件:lineup.in   输出文件:lineup.out   简单对比时间限制:4 s   内存限制:128 MB 题目描述 农夫约翰的 N (1 ≤ N ≤ 50,000) 头奶牛 ...

  5. POJ 3264 Balanced Lineup 【ST表 静态RMQ】

    传送门:http://poj.org/problem?id=3264 Balanced Lineup Time Limit: 5000MS   Memory Limit: 65536K Total S ...

  6. POJ3693 Maximum repetition substring [后缀数组 ST表]

    Maximum repetition substring Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9458   Acc ...

  7. 【BZOJ-2006】超级钢琴 ST表 + 堆 (一类经典问题)

    2006: [NOI2010]超级钢琴 Time Limit: 20 Sec  Memory Limit: 552 MBSubmit: 2473  Solved: 1211[Submit][Statu ...

  8. 【BZOJ-3956】Count ST表 + 单调栈

    3956: Count Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 173  Solved: 99[Submit][Status][Discuss] ...

  9. 【BZOJ-4569】萌萌哒 ST表 + 并查集

    4569: [Scoi2016]萌萌哒 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 459  Solved: 209[Submit][Status] ...

随机推荐

  1. IO 输出 PrintStream和PrintWriter

    PrintStream和PrintWriter的autoflushing机制有点不同,前者在输出byte数组.调用println方法.输出换行符或者byte值10(即\n)时自动调用flush方法,后 ...

  2. Redis主从复制、哨兵模式

    1.部署主从 环境:主IP:10.0.0.15,端口6379;从IP:10.0.0.16,端口6379. 原理:基于RDB持久化的功能来实现主从复制的功能. a.linux-redis1(10.0.0 ...

  3. [CC-CHANOQ]Chef and odd queries

    题目大意: 给定$n(10^5)$个线段$[l_i,r_i](1\leq l_i,r_i\leq n)$,有$q(q\leq10^5)$组询问,每次给出$m_i(\sum m_i\leq n)$个点$ ...

  4. [LOJ6278]数列分块入门 2

    题目大意: 给你一个长度为$n(n\leq 50000)$的序列$A$,支持进行以下两种操作: 1.将区间$[l,r]$中所有数加上$c$: 2.询问区间$[l,r]$中小于$c^2$的数的个数.思路 ...

  5. 我学MSMQ(二)

      上次我主要学习的是MSMQ的基本的概念.安装消息队列和新建了一个简单的队列.      现在我就继续学习关于消息队列的接收先还是概念         消息的接收又分成同步和异步方式两种,同步接收在 ...

  6. Powershell 远程管理

    一直使用 mstsc,为了防止墨菲定律,准备一些备用方案 环境,win10 to win12 winrm是windows 一种方便远程管理的服务: 首先要开启winrm service,便于在日常工作 ...

  7. USE [EPPM] [dbo].[REFRDEL_CLEANUP]

    USE [EPPM] GO /****** Object: StoredProcedure [dbo].[REFRDEL_CLEANUP] Script Date: 2016/4/2 16:32:29 ...

  8. [Angular] Dynamic component rendering by using *ngComponentOutlet

    Let's say you want to rending some component based on condition, for example a Tabs component. Insid ...

  9. EffectiveJava(16)复合优先于继承

    为什么复合优先于继承? 1.继承违反了封装原则,打破了封装性 2.继承会不必要的暴露API细节,称为隐患.比如通过直接访问底层使p.getProperty(K,V)的键值对可以不是String类型 3 ...

  10. ubuntu18.04 安装mysql时'root'@'localhost'无法获取登录权限

    查看一下user表,错误的起因就是在这里, root的plugin被修改成了auth_socket,用密码登陆的plugin应该是mysql_native_password mysql> sel ...