打算只写点有意思的题。
D1J Easy problem I
注意到 \(x_i\) 单增,所以一个数被减到负数之后,所有的操作都会将它减到负数,也就等价于乘 \(-1\) 再相加。
使用一棵线段树维护所有数,将这些数分为两种,一种如上,一种是区间减。
最终所有数都会变为需要乘 \(-1\) 再相加的数,于是只要每次精确操作将需要变化操作类型的数变化掉即可。
分开维护两类数的总和、个数,对于需要区间减的数再额外维护一个区间最小值,即可,总时间复杂度 \(O(q\log n)\)。
标签:杭电多校,题解,2023,区间,杂题,减到 From: https://www.cnblogs.com/cnyzz/p/17617267.html