RMQ 问题,全称为 Range Maximum/Minimum Query,表示区间最大/最小值查询。
顾名思义,本题要求解决 RMQ 问题,具体来说,要求解决区间静态最大值查询问题。
给出一个长为 的整数序列 和 个询问,每个询问给出一个区间 ,对于每个询问,你需要给出 之中的最大值。
第一行两个正整数 ,其中 意义此后将给出。
第二行 个正整数,表示序列中的数。
第三行一个整数 。
接下来 行,第 行两个整数 。
以上未特殊说明变量的含义均如题所述。
输出 行,第 行表示第 个询问的答案 的值。
5 1 2 4 9 10 4 3 2 3 1 4 1 2
9 10 4
对于前 的数据,,这个部分分考察暴力。
对于前 的数据,,这个部分分考察倍增。
对于另外 的数据,,这个部分分考察前缀和。
对于另外 的数据,,这个部分分可能考察二分使用。
对于 的数据,(除特殊数据)。
你可能需要组合一种以上的算法来通过本题。