Description
给出N个数,求第a个数到第b个数之间最大的数减去最小的数的结果

Input
N(N小于100,000),M(M小于100,000)
接下来有N个数
接下来M组范围,所有数均在[0,231-1]内
每个范围有2个整数a,b(1<=a<=b<=N)

Output
每行输出一个结果

Sample Input
5 3
4 2 5 1 10
1 5
2 3
2 2

Sample Output
9
3
0

—————————————————并不华丽的分界———————————————————————————————-

这题没什么好说的,线段树模板题。如果想要了解线段树,以及学习更多线段树,请戳http://blog.csdn.net/metalseed/article/details/8039326 里面详细的把线段树的单点更新和区间更新给介绍了一遍,嗯,还有很多例题。

#include <bits/stdc++.h>
using namespace std;
#define lson rt << 1
#define rson rt << 1 | 1const int maxn = 100001;
struct panel
{int l, r;int big, small;
}tree[maxn << 2];
void build(int rt, int l, int r)
{tree[rt].l = l;tree[rt].r = r;tree[rt].big = 0;tree[rt].small = 0;if(l == r){scanf("%d",&tree[rt].big);tree[rt].small = tree[rt].big;return;}int mid  = (l + r) >> 1;build(lson, l, mid);build(rson, mid + 1, r);tree[rt].big = max(tree[lson].big, tree[rson].big);tree[rt].small = min(tree[lson].small, tree[rson].small);
}
int QueryMax(int rt, int l, int r)
{int mid = (tree[rt].l + tree[rt].r) >> 1;if(tree[rt].l == l && tree[rt].r == r)return tree[rt].big;else if(r <= mid)return QueryMax(lson, l, r);else if(l > mid)return QueryMax(rson, l, r);elsereturn max(QueryMax(lson, l, mid),QueryMax(rson, mid + 1, r));
}
int QueryMin(int rt, int l, int r)
{int mid = (tree[rt].l + tree[rt].r) >> 1;if(tree[rt].l == l && tree[rt].r == r)return tree[rt].small;else if(r <= mid)return QueryMin(lson, l, r);else if(l > mid)return QueryMin(rson, l, r);elsereturn min(QueryMin(lson, l, mid),QueryMin(rson, mid + 1, r));
}
int main()
{int n,m;scanf("%d%d",&n,&m);build(1,1,n);for(int i = 0; i < m; i++){int a,b;scanf("%d%d",&a,&b);printf("%d\n",QueryMax(1,a,b) - QueryMin(1,a,b));}return 0;
}

转载于:https://www.cnblogs.com/wiklvrain/p/8179498.html

AOJ-351-求最值之差相关推荐

  1. Verilog学习之求两个数的差值设计

    文章目录 前言 一.题目描述 二.代码展示 总结 前言 今天我们做的是第七道题--求两个数的差值,其实听名字就可以知道这道题其实特别的简单,只是两个数之间的比较求差而已,所以这道题我们就不具体写思路了 ...

  2. 如何用python计算excel两行之间的差值_excel表格求两列数据差值-怎样在EXCEL表格中求两列数的差?...

    怎样在EXCEL表格中求两列数的差? 1.双击打开需行求差的Excel表格,Excel表格. 2.在进入Excel表格后,使用鼠标需差的单元格,先选中其中一行即可. 3.在选中一行后,在单元格内输入& ...

  3. CodeForces 444C 节点更新求变化值的和

    http://vjudge.net/problem/viewProblem.action?id=51622 题目大意: 给定一列n个数字,最初赋予值1到n 两个操作: 1.将区间[l,r]内的数改为x ...

  4. 笔试算法题(26):顺时针打印矩阵 求数组中数对差的最大值

    出题: 输入一个数字矩阵,要求从外向里顺时针打印每一个数字: 分析: 从外向里打印矩阵有多重方法实现,但最重要的是构建合适的状态机,这样才能控制多重不同的操作: 注意有四种打印模式(左右,上下,右左, ...

  5. 蚁群算法求最值c语言实现,蚁群算法代码(求函数最值)

    <蚁群算法代码(求函数最值)>由会员分享,可在线阅读,更多相关<蚁群算法代码(求函数最值)(4页珍藏版)>请在人人文库网上搜索. 1.function F=F(x1,x2) % ...

  6. 蓝桥杯 算法提高 ADV-222 7-2求arccos值

    算法提高 7-2求arccos值 时间限制:10.0s 内存限制:256.0MB 问题描述 利用标准库中的cos(x)和fabs(x)函数实现arccos(x)函数,x取值范围是[-1, 1],返回值 ...

  7. ACMNO.16用迭代法求 。求平方根的迭代公式为: X[n+1]=1/2(X[n]+a/X[n]) 要求前后两次求出的得差的绝对值少于0.00001。 输出保留3位小数 输入 X 输出 X的

    题目描述 用迭代法求 . 求平方根的迭代公式为: X[n+1]=1/2(X[n]+a/X[n]) 要求前后两次求出的得差的绝对值少于0.00001.输出保留3位小数 输入 X 输出 X的平方根 样例输 ...

  8. 蓝桥杯-递归求二项式系数值(java)

    算法训练 6-1 递归求二项式系数值 时间限制:10.0s 内存限制:256.0MB问题描述样例输入一个满足题目要求的输入范例.3 10样例输出与上面的样例输入对应的输出.数据规模和约定输入数据中每一 ...

  9. asin c语言中 返回值范围_asin()_C语言asin()详解:反正弦函数,求反正弦值

    double asin(double x); asin() 函数的功能是求反正弦值. 反正弦函数 asin() 和正弦函数 sin() 的功能正好相反:sin() 是已知一个角的弧度值 x,求该角的正 ...

  10. 1470: 区间求最值(RMQ问题,ST算法模板)

    1470: 区间求最值 Time Limit: 1 Sec Memory Limit: 128 MB [Submit][Status][Web Board] Description 给定一个长度为N ...

最新文章

  1. mysql二进制还原表_MYSQL 二进制还原
  2. 到底什么是几何深度学习?Twitter 首席科学家Bronstein深度解读
  3. CSV格式文件注意细节
  4. ON TOP-N and pagination queries
  5. 牛客 - 丁姐姐喜欢Fibonacci(找规律+思维)
  6. 什么?电路板上还要喷漆?
  7. request-爬取一张图片的练习-答案-私
  8. [脚本收集]提取Tripntale图片
  9. 用BP神经网络预测虫害
  10. Git曝最危险漏洞,允许攻击者远程执行代码!
  11. Ablation study 是什么意思?
  12. C语言深度解剖读书笔记(6.函数的核心)
  13. java常用算法整理
  14. 递归神经网络教程请签收!
  15. 唱响艾泽拉斯 - 小安专辑
  16. OC中类别(Catagory)基本使用
  17. 糗事百科李威: 如何基于数据构建推荐系统,助力精细化运营?
  18. 新的网络架构按下“快进键” 快步走入互联网下半场
  19. 如何用photoshop切图并去掉图片上面的文字
  20. 经典的mac阅读写作学习工具合集

热门文章

  1. hdfs中8031是什么端口号_删了HDFS又能怎样?记一次删库不跑路事件
  2. tsv文件导oracle窜列,TSV(tsv文档怎么转换excel)
  3. 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(上海),签到题G Fibonacci
  4. 2019百度之星程序设计大赛 1005 Seq
  5. java 多态 重载的区别_重写、覆盖、重载、多态几个概念的区别分析
  6. C#winform可视化(当主窗体不能拖动时)
  7. 判断位数(Java)
  8. mysql 丛集_MYSQL
  9. bzoj 3361: [Usaco2004 Jan]培根距离
  10. 2016ICPC沈阳站总结