1. 概述
RMQ(Range Minimum/Maximum Query),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j当然,该问题也可以用线段树(也叫区间树)解决,算法复杂度为:O(N)~O(logN),这里我们暂不介绍。
2.RMQ算法
对于该问题,最容易想到的解决方案是遍历,复杂度是O(n)。但当数据量非常大...
分类:
编程语言 时间:
2015-06-10 17:25:58
阅读次数:
173
pog loves szh IIITime Limit: 12000/6000 MS (Java/Others)Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 470Accepted Submission(s): 97P...
分类:
其他好文 时间:
2015-06-09 06:06:23
阅读次数:
104
题目地址:HDU 5266
这题用转RMQ求LCA的方法来做的非常简单,只需要找到l-r区间内的dfs序最大的和最小的就可以,那么用线段树或者RMQ维护一下区间最值就可以了。然后就是找dfs序最大的点和dfs序最小的点的最近公共祖先了。
代码如下:#include
#include
#include
#include ...
分类:
其他好文 时间:
2015-06-08 14:59:13
阅读次数:
133
这次省赛 虽然签到题有一点坑(神奇的是我们队还给改对了)但是后面的题没做出来 我感觉还是学的太浅;从今天开始 刷够500题在打比赛;本周目标:后缀数组刷完的话 把上周剩下的rmq补完
分类:
其他好文 时间:
2015-06-07 21:34:50
阅读次数:
102
http://acm.hdu.edu.cn/showproblem.php?pid=3183问题等价与取N-M个数,每次取的时候保证后面能取的个数足够,并且取的数最小 查询最小用rmq 1 #include 2 #include 3 #include 4 #include 5 6 using na....
分类:
其他好文 时间:
2015-06-04 15:20:02
阅读次数:
214
【bzoj3339】Rmq ProblemDescriptionInputOutputSample Input7 5 0 2 1 0 1 3 2 1 3 2 3 1 4 3 6 2 7 Sample Output3 0 3 2 4 HINTorz hzwer学长转------------------...
分类:
其他好文 时间:
2015-06-03 13:33:57
阅读次数:
173
题意:有一个无序数组,求有多少个长度为k的区间满足把区间内的数排序后是连续的。思路:长度为k的区间排序后是 连续的数等价于maxval-minval等于k-1并且不同的数有k个(或者说没有相同的数),第一个条件可以用rmq快速得到区间最大值与最小值之差,第二个条件可以这样求,按区间的左边界分类预处理...
分类:
其他好文 时间:
2015-06-03 06:10:45
阅读次数:
203
Description
The repetition number of a string is defined as the maximum number R such that the string can be partitioned into R same consecutive substrings. For example, the repetition number of "a...
分类:
编程语言 时间:
2015-06-01 22:36:06
阅读次数:
262
找连续数
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 281 Accepted Submission(s): 102
Problem Description
小度熊拿到了一个无序的数组,对于这个数组,小度熊想知道...
分类:
其他好文 时间:
2015-05-31 12:28:12
阅读次数:
125
2015百度之星 初赛1 1002 解题报告...
分类:
其他好文 时间:
2015-05-31 09:17:02
阅读次数:
122