摘要:
题意:每个商品有利润$w$和数量$c$,有三种操作:1. 对$[l,r]$商品的$w$加上$x$;2. 将商品$x$的$c$改成$c'$;3.查询$w×c$的最大值,$n,m \leq 10^5$,$|w|,|x|\leq 10^6$,$c,c'\leq 10^6$。思路:若无操作2,商品权值可表示为$wc + k×c$,需找到过点$(c,wc)$斜率为$k$直线的最大截距,对所有点维护上凸壳,通过二分找到与凸壳相切点得最大截距。因操作一是区间加,采用分块,对整块打标记,不满一块重构。操作2在凸壳上删点加点,操作三在每个块二分取最大值,可使用set或暴力维护凸壳,总时间复杂度约$O(n\sqrt n)$ 。 阅读全文
posted @ 2025-11-10 16:47
wing_heart
阅读(5)
评论(0)
推荐(0)

浙公网安备 33010602011771号