jzoj5703

题意

(n)个位置,((x_i,y_i))(forall i,j(i<j)x_i<y_j)(val(i,j)=|x_i-x_j| imes min(y_i,y_j))
三种操作,修改(i)的横坐标或纵坐标,查询([l,r])的最大贡献
数据是随机的

做法

维护(l_i,r_i)为左右最近的比其高的位置,由于数据随机,所以一直跳(l_i)(O(logn))次到达边界

修改(x)对局面没影响
修改(y),修改(r)数组,修改([l_i,i))这些位置,貌似有(O(logn))个位置(存疑)

查询,从([x,y])向中间跳(r,l),两边操作,每次一直保持一边更大

原文地址:https://www.cnblogs.com/Grice/p/12892212.html