·· / ·– ·· ·-·· ·-·· / ·–· · ·-· ··· ·· ··· - / ··- -· - ·· ·-·· / ·· / ·– ·· -·
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1012
这题每次都只查看最后l位的最大值,因而位置靠后的数如果大于前面的数,则前面的数是没有用的,直接扔掉即可。这样维护了一个单调递减的栈,同时再维护一个同步的位置栈,查询时需要根据位置栈找到所需最大值的位置,输出对应的最大值即可。
1 |
|
另外这题可以用线段树来做,先开好M大小的线段树,每次加节点时在后面插即可。
1 |
|