吉如一线段树1

区间取最值、区间求和问题

考虑这样一种做法:线段树维护区间的最大值、次大值、最大值个数,在询问值≥最大值时直接退出,询问值\(\in(max2,max)\)时更新信息并打标记,询问值≤次大值时递归左右儿子区间。
由于取最值操作时不同数字种数减少,而递归操作的次数是与数字种数有关的,可证明没有区间加减操作时复杂度为\(O(n\log n)\),有加减操作时复杂度为\(O(n\log n^2)\)

区间历史最值问题

猜你喜欢

转载自www.cnblogs.com/utopia999/p/9749403.html