E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
RMQ
poj3264_
RMQ
_ST
这个题昨天做过,但是今天使用的是
RMQ
_ST算法,网上关于
RMQ
还有中笛卡尔树的算法,今天我用的是ST算法,这个算法很给力,在初始化之后可以在O(1)的时间内求出最大值和最小值。
·
2015-11-07 12:10
poj
LCA与
RMQ
Beautiful girl, 题意:一颗树,给定三个顶点A、B、C,判断A与B之间的路径是否可以经过C 代码: 代码 /* * LCA->
RMQ
·
2015-11-07 12:50
MQ
HNCU专题训练_线段树(2)
1.统计颜色,或运算的运用2.区间第k大数3.一个很经典的题5.求区间相等数字的个数6.
RMQ
模板题,区间最大值和最小值的差 1.很好的思路,用或运算来避免左右儿子树总相同颜色的情况。
·
2015-11-07 09:50
线段树
uva11235 Frequent values
思路:这个是
RMQ
变形,因为这个是一个non-decreasingorder序列,所以同一个数是连续的,那么我们可以先处理下每个连续的数的左右边界,也就是l[i],r[i]的值,num[i]表示当前位置的数所属段的标号
KIJamesQi
·
2015-11-06 16:00
tree
segment
HDU 4122 Alice's mooncake shop(
RMQ
,或者单调队列)
Alice's mooncake shop Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1183 Accepted Submission(s): 2
·
2015-11-06 07:41
HDU
LCA和
RMQ
的一些事情
本来想详细写写LCA和
RMQ
的东西的,但是觉得积累得还不够而且比较懒就不写了。
·
2015-11-03 21:35
MQ
uva12299(
RMQ
with Shifts)
思路:这题一眼就是线段树单点更新,,,训练开着题的时候就是傻逼了,,,一看数据很大,时间很小,TLE定了,,,3个小时后再来看,发现别人过的时间都只有300-ms,,,然后再读题的时候就看见了 #include #include #include #include #include #include #include #include #include #include #include #inc
KIJamesQi
·
2015-11-02 22:00
线段树
uva
HDU 3183 A Magic Lamp (双向链表贪心删除 或者是
RMQ
取数)
A Magic Lamp Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 745 Accepted Submission(s): 271 Proble
·
2015-11-02 19:16
双向链表
HDU 1806 Frequent values(
RMQ
)
Frequent values Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 778 Accepted Submission(s): 259 Pro
·
2015-11-02 19:15
value
POJ 3264 Balanced Lineup(
RMQ
)
Balanced Lineup Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 24349 Accepted: 11348 Case Time Limit: 2000MS Description For the daily milking, Farmer Jo
·
2015-11-02 19:10
poj
两种解法-树形dp+二分+单调队列(或
RMQ
)-hdu-4123-Bob’s Race
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4123 题目大意: 给一棵树,n个节点,每条边有个权值,从每个点i出发有个不经过自己走过的点的最远距离Ma[i],有m个询问,每个询问有个q,求最大的连续节点区间长度ans,使得该区间内最大的M[i]和最小的M[j]之差不超过q。 解题思路一: 这套题目好卡时间。 树形dp+二分+单调队
·
2015-11-02 19:31
HDU
HDU 3183 A Magic Lamp
再结合
RMQ
就可以了。 #include<iostream>#i
·
2015-11-02 18:36
lamp
HDU 3486 Interviewe
该题是一道
RMQ
+二分
RMQ
(Range Minimum/Maximum Query)问题是求区间最值问题。
·
2015-11-02 18:35
interview
RMQ
(模板 ST 区间最值,频繁的间隔时间)
PS: 介绍:http://blog.csdn.net/liang5630/article/details/7917702
RMQ
算法。
·
2015-11-02 17:16
时间
【
RMQ
】 区间最值查询详解
概述
RMQ
(Range Minimum/Maximum Query),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问
RMQ
(A,i,j)(i,j<=n),返回数列
·
2015-11-02 17:05
查询
[hdu3486]
rmq
+枚举优化
题意:给n个数,求最小的段数,使得每一段的最大值之和大于给定的k。每一段的长度相等,最后若干个丢掉。 思路:从小到大枚举段数,如果能o(1)时间求出每一段的和,那么总复杂度是O(n(1+1/2+1/3+...+1/n))=O(nlogn)的。但题目时限卡得比较紧,需加一点小优化,如果连续两个段数它们每一段的个数一样,那么这次只比上次需要多计算一个区间,用上一次的加上这个区间最大值得到当前分段的总
·
2015-11-02 16:35
HDU
[hdu2888]二维
RMQ
二维
RMQ
。
·
2015-11-02 16:26
HDU
[hdu4123]dfs区间化+
RMQ
枚举区间左边界,右边界同样递增,类似单调队列,区间最值用
RMQ
查询(常数小)。
·
2015-11-02 16:25
HDU
pku Nearest Common Ancestors LCA 问题(
rmq
&& tarjan)解决
id=1330 题意:给n个点,n-1条边,一棵树,求每个询问的LCA; 思路:
rmq
求LCA。。。。
·
2015-11-02 15:46
REST
hdu One and One Story tarjan缩点+
rmq
+LCA
http://acm.hdu.edu.cn/showproblem.php?pid=4297 题意: 给出n个点的有向图,每个点的出度均为1.有m个询问,每个询问两个数(u,v),表示两个人一个在u一个在v。 对于每个询问,请你选择一个点P使得u、v均能到达P。设u到达P需要A步,v到达P需要B步。求一个P使得max(A,B)最小? 若答案不唯一,输出min(A,B)最小的;若答案还不唯一
·
2015-11-02 15:46
tar
线段树模板 (刘汝佳)
代码: [cpp] view plain copy // Dynamic
RMQ
 
·
2015-11-02 14:11
线段树
BZOJ 1699: [Usaco2007 Jan]Balanced Lineup排队(
RMQ
)
RMQ
..
·
2015-11-02 12:40
USACO
UVa 12299
RMQ
with Shifts(线段树)
线段树,没了.. ----------------------------------------------------------------------------------------- #include<cstdio> #include<cstring> #include<iostream> #include<algorit
·
2015-11-02 12:05
with
RMQ
算法题目
rmq
模板题目: 求出最高最低然后求差。 注意这里f[i][j]表示从j开始的2^i次方个数的最值。
·
2015-11-02 11:04
算法
hihoCode r#1077 :
RMQ
问题再临-线段树
思路:全都已经介绍了。连步骤它都告诉你了。差的只是实现了。两种实现方法:(1)用链表做树(2)用顺序表做树。顺序表的速度更快,因为不用管链的问题。空间谁更省?树是接近平衡的,也就是叶子节点在最下两层,但是如果树深一点,用顺序表就会浪费很多空间,这底层可能比之前存的都要多,但是链表却每个点都要消耗。总的来讲,顺序表更省,即使浪费了一半,也只是一半乘以4个字节,可是链表就每个节点必须浪
·
2015-11-02 11:15
code
hihoCoder #1070 :
RMQ
问题再临
G++ 77ms 0MB 思路:这题用暴力是最快的,甚至比线段树还佳。 按全部都是查询的来算,是O(n*q)。 1 #include <bits/stdc++.h> 2 using namespace std; 3 const int N=10010; 4 int w[N], n, q, L, R, t
·
2015-11-02 11:14
code
hihoCoder #1068 :
RMQ
-ST算法
AC G++ 826ms 146MB 思路: 按照提示一的方法进行实现。使用二进制的思想,只需要找到从第i个开始的2^j个数中的最小。i=(1,n)而因为n上限为100万,100万的二进制(1111 01000010 01000000),那么j 最大不超过20。按最坏情况算,只需要计算n*20个结果就行了,也就是O(n)。 重点在如何在O(1)时
·
2015-11-02 11:13
code
POJ 3264 Balanced Lineup 简单
RMQ
题目:http://poj.org/problem?id=3264 给定一段区间,求其中最大值与最小值的差。 1 #include <stdio.h> 2 #include <algorithm> 3 #include <math.h> 4 5 int dpMin[50010][31], dpMax[50010][31]; 6
·
2015-11-02 11:30
poj
RMQ
-ST求区间最值
二分果然是宇宙最强法则。。。 1 #include <iostream> 2 #include <algorithm> 3 #include <cstring> 4 #include <string> 5 #include <cstdio> 6 #include <cmath>
·
2015-11-02 11:28
MQ
线段树专辑 —— pku 2482 Stars in Your Window
所谓区间最值,其实就是和
RMQ
差不多,只不过
RMQ
是以点为单位,而这个是以区间为单位。 怎么扯到区间最值了呢?
·
2015-11-02 09:22
window
线段树专辑 —— pku 3145 Harmony Forever
解决这题的时候,我们先用
RMQ
的方法求出每一段的最小值,这是容易做到的。 这题的数据范围是500000,也就是说最多会有500000个叶子节点,当该叶子节点的值为inf的时候
·
2015-11-02 09:22
for
线段树专辑——hdu 1754 I Hate It
pid=1754 这是一道运用线段树求解简单
RMQ
的题目,和敌兵布阵一样,这题的跟新操作也是对点进行的,即跟新时跟新到根节点即可,无需任何技巧。
·
2015-11-02 09:09
HDU
[CF 191C]Fools and Roads[LCA Tarjan算法][LCA 与
RMQ
问题的转化][LCA ST算法]
郭华阳 - 算法合集之《
RMQ
与LCA问题》. 讲得很清楚!
·
2015-11-02 09:48
tar
hdu 3486 Interviewe
RMQ
hdu 3486 Interviewe
RMQ
//hdu 3486 Interviewe //
RMQ
//用
RMQ
预处理一下,然后进行枚举,具体看代码 //枚举要加优化,要不一样会超时
·
2015-11-02 09:17
interview
RMQ
hdu 3183 A Magic Lamp
RMQ
hdu 3183 A Magic Lamp //hdu 3183 A Magic Lamp //
RMQ
//用
RMQ
求剩下的n-m个数,第一个数肯定在第一个数和第m+1 个数之间的最小的那个数
·
2015-11-02 09:08
lamp
poj 3264 Balanced Lineup
id=1272
RMQ
poj 3264 Balanced Lineup //poj 3264 Balanced Lineup //
RMQ
//用
RMQ
求出最大值和最小值相减即可,具体看一下代码
·
2015-11-02 09:07
poj
poj 3368(
RMQ
模板)
求解
RMQ
问题的算法有:搜索(比较暴力),线段树,ST算法(DP),其中较为高效的是ST算法,比较常用, 复杂度:预处理O(nlogn),查询O(1)。
·
2015-11-02 09:21
poj
RMP
概述
RMQ
(Range Minimum/Maximum Query),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问
RMQ
(A,i,j)(i,j<=n),返回数列A中下标在
·
2015-11-01 15:08
rm
线段树
左右孩子:lc,rc 4 //信息域:key值,如
RMQ
问题中,信息域中存储的是区间最大值 5 struct Node{ 6 int ld,rd; 7 Node *lc,
·
2015-11-01 15:08
线段树
poj 2019 二维
rmq
*
题目大意:给出一个N*N矩形,每个格子上有一个价值。询问一个b*b的矩形在左上角的位置(x,y),(x+b-1,y+b-1)这一部分的最大值-最小值是多少。 模板题 1 #include <stdio.h> 2 #include <string.h> 3 #include <iostream> 4 #include <algori
·
2015-11-01 15:24
poj
tarjan 算法模板
做了一些树形DP实在不想做了看到von在玩tarjan算法,好像放假之前看过关于
rmq
以及tarjan算法的说明只是没具体弄明白。今天看了一下von分享的资料不错。
·
2015-11-01 14:44
tar
RMQ
算法模板
2、
RMQ
算法(转载) 对于该问题,最容易想到的解决方案是遍历,复杂度是O(n)。但当数据量非常大且查询很频繁时,该算法也许会存在问题。
·
2015-11-01 14:43
算法
RMQ
算法简单实现poj 3368 Frequent values
题目就是一个
rmq
算法的典型应用,关键是将其转化成
rmq
的形式,因为每个点都是a[i]<=a[i+1]所以对于每一个点记录他的左边与右边,因而可知他的长度(即出现的频率),然后还有一个值记录频率;
·
2015-11-01 14:29
value
POJ 3693 (后缀数组) Maximum repetition substring
然后枚举相邻的两个,尽可能的向前和向后延伸,假设延伸长度为k,则重复次数为k / L + 1 向后延伸很自然的就是求一次LCP,这个用
RMQ
预处理一下就可以O(1)查询。 向前延伸
·
2015-11-01 14:34
substring
UVa 11235 (
RMQ
) Frequent values
对于所查询的[L, R]如果它完全覆盖了某些连续的重复片段,那么查询的就是这几种元素重复最多的次数,也就是
RMQ
。 如果[L, R]还覆盖了某一部分边界,也要单独计算取最大值。
·
2015-11-01 14:48
value
BZOJ 1342: [Baltic2007]Sound静音问题( 单调队列 )
一开始写了个
RMQ
然后就T了... 好吧正解是单调队列, 维护两个单调队列...
·
2015-11-01 11:44
2007
Uva_11235_Frequent values
开一个num数组,用num[i]来记录第i段相等的元素有多少个(也就是说相当于
RMQ
中的元素值了),num数组的长度就是原数列不同元素的个数(段数),l数组记录i段元素的上界,r数组记录i段元素的下界,
·
2015-11-01 10:47
value
RMQ
_ST算法模板
RMQ
:范围最小值问题。给出一个n个元素的数组A1,A2,...,An,设计一个数据结构支持查询操作Query(L,R):计算min{AL,AL+1,...,AR}。
·
2015-11-01 10:47
算法
LCA-Tarjan算法
一开始从watashi的那本书中看了二分查找法跟
RMQ
法,也明白了思路,
RMQ
法是在线LCA算法,但我记得还有一种tarjan的离线算法。于是花了两个小时在网上查了一下,大致做了几道题。
·
2015-11-01 10:14
tar
RMQ
问题ST算法
http://www.cppblog.com/reiks/archive/2009/08/28/94629.aspx /*
RMQ
(Range Minimum/Maximum Query
·
2015-11-01 08:56
算法
上一页
19
20
21
22
23
24
25
26
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他