摘要: 我咋感觉这玩意标记跟矩阵完全不是一个难度的呢。这个套路应该不会再考了,不过还是整理一下。 先看一个问题引入: 给定一个序列 \(a\) 有两种操作,支持以下操作。 \(i\in[l,r],a_i\gets a_i+x\),即区间加 查询 \(\sum_{i=l}^r b_i\) 每轮操作后 \(i\ 阅读全文
posted @ 2025-12-04 18:04 Uesugi1 阅读(12) 评论(2) 推荐(0)
摘要: \[ans=\max\{zx+wy\}\to \\\frac{ans}{w}=\max\{\frac{z}{w}x+y\} \]斜率优化的形式,答案一定在上凸包上。而这道题要维护区间凸包。 考虑线段树,预处理区间凸包复杂度是 \(O(len)\) 的,这样复杂度是 \(O(n^2)\) 的。 但是每 阅读全文
posted @ 2025-12-04 09:45 Uesugi1 阅读(3) 评论(0) 推荐(0)
摘要: 首先对于 \(suf_i>pre_{i-1}\),那么 \([1,i),[i,n]\) 独立。其中 \(suf\) 是后缀最小值,\(pre\) 是前缀最大值。 那么可以分出很多段,现在要考虑的就是段内怎么操作使其能够排序。 合法的条件当且仅当不存在 \(i<j,col_i=col_j,p_i>p_ 阅读全文
posted @ 2025-12-04 07:58 Uesugi1 阅读(6) 评论(0) 推荐(0)
摘要: 显然对于同色连续段只用考虑最右边的一个,因为能拓展的都一样。 按照同色段缩起来后,考虑一个段能拓展多少种序列,思考一下容易发现是 \(\sum_{j>i} [col_j\ne col_i]\cdot len_j\)。 #include<bits/stdc++.h> #include<ext/pb_d 阅读全文
posted @ 2025-12-04 07:50 Uesugi1 阅读(3) 评论(0) 推荐(0)