![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
RMQ
文章平均质量分 77
sdj222555
这个作者很懒,什么都没留下…
展开
-
RMQ问题之ST算法
ST算法的基本原理百度一下就可以知道 RMQ(Range Minimum/Maximum Query)问题是求区间最值问题。可以写一个线段树,但是预处理和查询的复杂度都是O(logn)。这里有更牛的算法,就是ST算法,它可以做到O(nlogn)的预处理,O(1)!!!地回答每个询问。 来看一下ST算法是怎么实现的(以最大值为例): 首先是预处理,用一个D原创 2012-08-17 02:13:29 · 6577 阅读 · 2 评论 -
POJ 1986 Distance Queries LCA和RMQ
这题以前用tanjan做过现在再做一遍 用RMQ的方法。 大意就是求一棵树上任意两点的距离先DFS跑出欧拉序列然后根据pos直接RMQ就行了#include #include #include #include #include #include #include #include #include #define eps 1e-5#define MAXN原创 2012-08-17 14:10:25 · 941 阅读 · 0 评论 -
POJ 3368 RMQ
此题用线段树也能做 用RMQ也能做当然RMQ的速度比线段树要快很多 #include #include #include #include #include #include #include #include #include #define eps 1e-5#define MAXN 111111#define MAXM 11111#define INF 1000原创 2012-08-17 13:14:57 · 1469 阅读 · 0 评论 -
POJ 2452 RMQ+二分
解法是枚举每个位置i,找出i右边比第一个比a[i]小的a[j]的位置j在i到j - 1中间求最大值的位置k 如果a[k] > a[i] 那么更新答案#include #include #include #include #include #include #include #include #include #define eps 1e-5#define M原创 2012-08-17 15:55:02 · 804 阅读 · 0 评论 -
POJ 2019 二维RMQ
题意很简单 就不说了为了把它推广成矩形的写了这种查询是O(n)的方法当然还有O(1)的矩形的方法了 只不过太麻烦了但是对于正方形来讲 还是比较好弄的#include #include #include #include #include #include #include #include #include #include #include #def原创 2012-08-17 17:10:35 · 1805 阅读 · 1 评论 -
POJ 1785 treap 或 RMQ
本题大意就是。建立一颗树,每个结点有两个关键字,要求第一个关键字满足二叉搜索树的性质,第二个结点满足堆的性质首先,要把所有结点按照第一个关键字按非递减排序,这样之后,每个结点左边的结点都比该结点的第一个关键字小,右边的则第一个关键字都比他大。这样的话按顺序每次插入右子树,因为要满足二叉搜索树的性质, 插入之后不能满足堆的性质时就左旋。#include #include原创 2012-08-22 14:33:51 · 2043 阅读 · 0 评论 -
POJ 2201 RMQ 笛卡尔树
给出一些结点每个节点有两个关键字要求构造一棵树第一个关键字满足二叉搜索树的性质,第二个关键字满足小堆的性质和1785几乎一模一样题目还让输出yes 或者no 实际上,因为所有的第一关键字互异,第二关键字也互异,所以一定能构造出来这样的树这题不用treap的原因我嫌treap有点麻烦,还旋转啥的,没RMQ直观好想#include #include #include原创 2012-08-26 15:43:57 · 1626 阅读 · 0 评论