码迷,mamicode.com
首页 >  
搜索关键字:士兵杀敌 rmq    ( 1079个结果
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
【RMQ问题】uva11235Frequent values
/* RMQ问题 ----------------------------------------------------------------------------------------------- 用数组: cnt[i]:第i段中数的个数(每一段是指所有数都同的一段数)(在这里该数组相当于RMQ问题中的A[]数组) num[i]:位置i所在段的编号 left1[i]:位置i左端点的位置...
分类:其他好文   时间:2014-08-07 00:48:27    阅读次数:191
RMQ算法分析
RMQ算法,是一个快速求区间最值的离线算法,预处理时间复杂度O(n*log(n)),查询O(1),所以是一个很快速的算法,当然这个问题用线段树同样能够解决。 问题:给出n个数ai,让你快速查询某个区间的的最值。 算法分类:DP+位运算 算法分析:这个算法就是基于DP和位运算符,我们用dp【i】【j】表示从第 i 位开始,到第 i + 2^j 位的最大值或者最小值。 ...
分类:其他好文   时间:2014-08-06 18:58:52    阅读次数:222
hdu 3183 A Magic Lamp(RMQ)
A Magic Lamp                                                                               Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Descripti...
分类:其他好文   时间:2014-08-05 11:23:19    阅读次数:240
给出一个长度为n的数列,请对于每一个数,输出他右边第一个比他大的数。n<=100000.
RT,一个ppt里看到的题,不过没讲做法。百度上基本搜不到。自己想了个做法,理论上可行,复杂度也是O(nlogn)。首先,做一次RMQ,求区间最大值。对于任意一个数s[i],可以用logn的时间求出他右边第一个比他大的数:RMQ[i][j]表示从s[i]开始的2^j个数中的最大值。对于确定的i,RM...
分类:其他好文   时间:2014-08-05 00:15:58    阅读次数:302
UVA 12299 - RMQ with Shifts(线段树)
UVA 12299 - RMQ with Shifts 题目链接 题意:给定一个数组,两种操作,每次query操作输出区间最小值,每次shift操作把选中位置每个位置向左移一位,最左的到最后去 思路:线段树,shift操作中位置个数不会超过30个,那么直接当作点修改来做,那么就变成了简单的线段树了 代码: #include #include #include u...
分类:其他好文   时间:2014-07-30 20:56:34    阅读次数:331
UVA 11235 Frequent values(RMQ)
Frequent values          TimeLimit:3000Ms You are given a sequence of n integers a1 , a2 , ... , an in non-decreasing order. In addition to that, you are given several queries consisting of indices...
分类:其他好文   时间:2014-07-30 20:51:23    阅读次数:507
poj 3264 Balanced Lineup
题目链接:http://poj.org/problem?id=3264 题目大意:就是给你一串数,问你最大数和最小数的差值。。。。。。。 思路:最基本的线段树,只需要建树和查询,修改都省啦,但是查询要写两个,一个查询最大值,一个查询最小值。。。。。。然后就能AC掉。。。。。但是话说poj把它分类到RMQ中。。。。 code: #include #include #i...
分类:其他好文   时间:2014-07-29 22:03:22    阅读次数:404
POJ3264 Balanced Lineup RMQ 线段树
求区间内最大数和最小数的差,用两棵线段树,一个维护区间最大值,一个维护区间最小值。 #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define QUADMEM...
分类:其他好文   时间:2014-07-29 22:00:02    阅读次数:259
UVA 11235 - Frequent values(RMQ)
UVA 11235 - Frequent values 题目链接 题意:给定一个升序数列,每次询问一个区间[l, r],求出其中相同数字最大的个数 思路:RMQ,由于是升序,所以数字大小相同的必然连在一块,先预处理出一共有多少段,每段包含多少个数字,和原数组中每个位置对应哪一段,最左边位置和最右边位置,然后每次询问的时候,可以把询问[L, R]的时候可以分成三段: 1、L到r[...
分类:其他好文   时间:2014-07-29 14:38:28    阅读次数:192
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!