【题解】QOJ8672 排队

Sol I
函数扫描线,插入-标记-回收。
每次拉出 \([l_i,r_i]\) 打 +1 标记然后和原来的平衡树合并。
时间复杂度 \(O(n\log^2n)\)

Sol II
考虑线段树维护分段函数,因为函数值不降,所以可以双指针复合。
初始化 build 的时间复杂度是 \(O(n\log n)\)
查询的时候二分就是 \(O(q\log ^2 n)\),但是其实可以分散层叠,这样能做到 \(O(q\log n)\) 查询。