[SYSU 1800][BNUOJ 27411] Sequence [单调队列][RMQ]
给一个序列,求这个序列的长度在l到r之间的子串的元素和的最小值
数据范围序列总长度小于32767,每个元素范围没说,实测他们及他们的和可以直接用int
解法1:用单调队列维护从某个位置开始,到当前位置结束的子串的元素和,他们应该是单增的,复杂度O(n)
解法2:也可以计算出长度在0到r-l之间的子串的元素和的最大值,然后用1-i的元素和减,复杂度O(n)
解法3:也可以用RMQ做,不过复杂
原创
2014-07-11 09:53:06 ·
497 阅读 ·
0 评论