码迷,mamicode.com
首页 >  
搜索关键字:st算法    ( 140个结果
Poj3264(ST算法)
以前也没怎么听过这个算法,网络赛中有个题好像是什么最近公共祖先,看了一下这个算法,是一个动态规划,核心思想是倍增. 用途:解决rmq问题,例如给一个序列{an},询问是任意一个区间(l,r)中最小的数或者最大的数. 时间复杂度:预处理的时间是O(nlogn) 查询:O(1) 局限性:只能处...
分类:其他好文   时间:2014-10-09 01:34:57    阅读次数:177
UVA 11235 (游程编码+ST算法)
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=23846题目大意:给定一个升序序列,有q次询问,每次询问(L,R)出现最多的值的次数。解题思路:非常麻烦的题目。尽管一眼就能看出来是个RMQ。关键在于如何转化为RMQ。...
分类:其他好文   时间:2014-10-03 20:45:05    阅读次数:194
CodeForces 359D (数论+二分+ST算法)
题目链接: http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=47319题目大意:给定一个序列,要求确定一个子序列,①使得该子序列中所有值都能被其中一个值整除,②且子序列范围尽可能大(r-l尽可能大)。解题思路:对于要求1,不难发...
分类:其他好文   时间:2014-10-03 16:33:14    阅读次数:215
CF359D Pair of Numbers [RMQ+ST算法]
题意: 给一串数,找出最长的区间使得这个区间里面有个数能被其他所有数整除(包括它自己),求满足这个条件的最长区间的个数及长度,以及这些区间的左端的位置 分析: 这个区间的要求其实就是GCD(ALL)=MIN(ALL),能被其他数整除,这个数肯定是最小的,然后又能被其他数整除(包括自己)这个数就是GCD了 可以二分枚举区间长度,然后验证答案的可靠性 对当前长度的所有区间,套用RMQ...
分类:其他好文   时间:2014-09-01 14:05:53    阅读次数:248
[POJ 3264]Balanced Lineup(ST算法求RMQ)
Description For the daily milking, Farmer John's N cows (1 ≤ N ≤ 50,000) always line up in the same order. One day Farmer John decides to organize a game of Ultimate Frisbee with some of the cows. ...
分类:其他好文   时间:2014-08-25 23:01:45    阅读次数:508
[POJ] 3264 Balanced Lineup [ST算法]
Balanced LineupTime Limit:5000MSMemory Limit:65536KTotal Submissions:34306Accepted:16137Case Time Limit:2000MSDescriptionFor the daily milking, Farmer...
分类:其他好文   时间:2014-08-13 22:18:37    阅读次数:301
RMQ问题与ST算法
RMQ(Range Minimum/Maximum Query)问题是求区间最值问题。对于长度为 n 的数组 A,进行若干次查询,对于区间 [L,R] 返回数组A中下标在 [L,R] 中的最小(大)值。可以用线段树来解决这个问题,预处理的复杂度是 O(nlogn),查询的复杂度是 O(logn)。更...
分类:其他好文   时间:2014-08-08 17:34:26    阅读次数:200
POJ 3264 Balanced Lineup ST算法
ST算法即是sparse table算法,就是稀疏表的意思,就是利用二分法来划分一个表,划分为2的次方段,之后利用这个st表计算查询结果,可以使得预处理时间O(nlgn),而查询时间为O(1) ; 那么有人会有疑问,既然查询时间是O(1),那么为什么这个算法很多时候并不比线段树快多少,甚至根本没有快过呢? 因为其实查询时间为O(log(range)), range为查询区间的大小,因为...
分类:其他好文   时间:2014-07-12 20:35:55    阅读次数:164
对数组按照某一基准进行整理
题目:给定一个整数数组,把最右端的元素作为基准,对这个数组进行整理,其中大于这个基准的元素放到它的右边,小于这个基准的元素放到它的左边。不得使用临时数组。 思路:先找一个大于基准的元素与基准进行交换位置,此时基准元素已经在数组的中部(不是最右/中间),从基准开始向后扫描,小于基准则交换。 public class ArrayPivot { public static void main(St...
分类:其他好文   时间:2014-07-08 18:14:57    阅读次数:166
理解RMQ问题和ST算法的原理
1.RMQ问题     RMQ (Range Minimum/Maximum Query):对于长度为n的数组A,回答若干询问RMQ(A,i,j)(i,jRMQ问题是指求区间最值的问题。最简单的方法,就是遍历数组直接搜索,但是这种方式时间复杂度是O(n)。对于数组长度较大,性能要求高的场景不适用。 2.ST(Sparse Table)算法 ST算法是一种更加高效的算法,以O(nlog...
分类:其他好文   时间:2014-05-25 22:28:29    阅读次数:375
140条   上一页 1 ... 12 13 14
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!