码迷,mamicode.com
首页 > 其他好文 > 详细

RMQ(区间最值问题)

时间:2019-04-11 09:15:12      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:技术   png   info   数列   就是   最大   区间   问题:   mamicode   

问题:

  RMQ (Range Minimum/Maximum Query)问题是指:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j<=n),返回数列A中下标在i,j里的最小(大)值,也就是说,RMQ问题是指求区间最值的问题。

dp思想:

  dp[i][j]中存储的是从第j个数开始的2i个数最大的数。(如下图)

技术图片

  dp[2][1]表示的是1到1+22-1中最大的数。即下表1-4中最大的数。

  如果要求1-6中最大的数,可以先将区间拆成两个2x长度的字串,分别求字串的最大值。1-6可以拆分成1-4和3-6这两个序列长度都为4.所以直接比较dp[2][1]和dp[2][3]即可。

dp代码:

RMQ(区间最值问题)

标签:技术   png   info   数列   就是   最大   区间   问题:   mamicode   

原文地址:https://www.cnblogs.com/wz-archer/p/10687079.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!