奇妙的数列(单调栈)

即: 题解 我们分析一下条件, bj <= bi <= bn 什么意思? 说明bj和bi都不超过bn,那么首先可以确定范围 bi可以在bj~bn的范围内任意波动,设bm是bn左边第一个严格比它大的数,那么j只能在m+1~n内取值。 然后可以用反证法证明bj就是m+1到n中的最小值。 那么可以用一个单调递减单调栈来算每一个m,然后设第i个元素的“m”为Ai,不难发现,新加进栈里的 i 的Ai就是弹出
相关文章
相关标签/搜索