维护一个长为 nnn 的序列,qqq 次操作:
1 l r k1 \ l \ r \ k1 l r k,询问区间内所有小于等于 kkk 的数的和。
2 x k2 \ x \ k2 x k,将第 xxx 个数修改为 kkk。
其中 1≤n≤5×105,1≤q≤1051 \le n \le 5 \times 10^5,1 \le q \le 10^51≤n≤5×105,1≤q≤105,且序列中任何时刻的最大值 MaxMaxMax 都满足 1≤Max≤1051 \le Max \le 10^51≤Max≤105。
问一下:这题除了用树状数组套可持久化线段树(值域线段树)还有什么其他的做法吗?
即有没有比 O(Nlog2W)O(N \log^2 W)O(Nlog2W)(WWW 为值域)更优秀的算法?