![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构:RMQ
文章平均质量分 72
skajre
这个作者很懒,什么都没留下…
展开
-
NYOJ 119士兵杀敌(三)(RMQ)
这题目dp数组第二维最起码取17,因为16是6万多,不到10万,长度会不够,做RMQ题目时需要考虑好第二维最小取多大。//// main.cpp// Richard//// Created by 邵金杰 on 16/9/13.// Copyright © 2016年 邵金杰. All rights reserved.//#include#include#include原创 2016-09-13 13:43:29 · 317 阅读 · 0 评论 -
UVA 11235 Frequent values(RMQ)
因为是非递减的,所以相同的是连在一起的。那么只要用用两个数组value[i],count[i]把连续的去掉,value放的是不同的数组元素,count放的是该数的数量,用num[p],left[p],right[p],分别记录当前位置在去重后的位置,该段的左端点,右端点。如果l,r在同一段里那么就是r-l+1,否则max(RMQ(num[l]+1,num[r]-1),max(right[l原创 2016-10-21 12:26:37 · 180 阅读 · 0 评论 -
UVA 10829 L-Gap Substrings (后缀数组+RMQ)
先枚举U的长度,然后枚举坐端点,左断点向左向右扩展,如果长度大于L,那么lcp-L+1就是该点的UVU串数量。#include#include#include#includeusing namespace std;const int maxn=100000+5;int g;struct SuffixArray{ int s[maxn]; int sa[maxn];原创 2016-11-06 13:43:03 · 276 阅读 · 0 评论 -
RMQ算法(ST算法)
1. 概述RMQ(Range Minimum/Maximum Query),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j当然,该问题也可以用线段树(也叫区间树)解决,算法复杂度为:O(N)~O(logN),这里我们暂不介绍。2.RMQ算法对于该问题,最容易想到的解决方案是遍历,复杂度是O(n)。但当数据量非常大原创 2016-09-11 10:10:14 · 241 阅读 · 0 评论