codechef NQNF

题意

codechef

做法一

首先考虑不含操作3\(,4\),且如果每次操作都是对全局:\(A+=B\),那么加\(x\)次,\(B_i\times x+A_i\),这个可以维护一个凸包
再考虑进操作\(3,4\),也只需要增加一点变量可以维护:使得斜率不变,把值加到截距上。而每个点加的值一样,凸包还是不变

考虑进区间操作,就分块好了,边角块重构
块大小为\(B\)\(O(q\times(BlogB+\frac{n}{B}))\)

做法二

写的是做法一,\(rank5\),前四个都是李超树

对操作分块,然后用李超树维护

题外话

不知道题解咋用插入排序,感觉两个数组是无序的啊...

posted @ 2020-05-08 17:13  Grice  阅读(121)  评论(0编辑  收藏  举报