先分块,离线逐块处理。
每个块上有若干散块修改和整块修改。
将两个散块之间的整块修改用类似 P5073 一起处理,这样就只有加正数,使用 KTT 维护一次函数最值。碰见散块修改重构整个块。
调调块长就是 O(nnlogn)O(n \sqrt{n}\log n)O(nnlogn)。
实现大概有些复杂,只是问问有没有正确性,并非讨论区题解。