WQS 二分 & 凸优化dp
WQS 二分
决策单调性,四边形不等式
\(O(nk\log n) \to O(n\log n)\)
想法
转移转成最短路。
最短路,转移代价 \(\to\) 边权。
恰好选 k 条边的最短路为 \(f\)。
\(f\) 必须有凸性。
加上额外代价\(\lambda\):
-
\(\lambda \to \inf\), 选 1 边
-
\(\lambda \to -\inf\), 选 n 边
-
二分
最小化 \(\lambda k+f_k\)。
满足四边形不等式一定凸。
\[2f_{k+1} \le f_k+f_{k + 2}
\]
通常跟决策单调性一起用。
\[w(i,j) \to w(i,j)+\lambda
\]
对于满足四边形不等式的序列DP可做到 \(O(n\log n \log W)\)。
对于有的二维限制就 wqs二分套 wqs 二分。
题目
[IOI2016] aliens
如果一个点在对角线下面,翻上去。
如果一个点右上角有点,就直接把这个点删掉。
对剩下的点作 DP
\(j + 1 \to i\), 减去重叠部分。
因为拍的越多越优,所以直接拍 \(k\) 张。
tree
板子。
Rikka with K-Match
因为可以用费用流,所以是凸性。
注意wqs二分上限 \(n*m*W\)。
有可能当 \(k \to k+1\) 时,可能 \(0 \to \dfrac{nmW}{2}\)
林克卡特树 或 林克卡特树
等价于搞 k+1 个连通块然后直径加起来。
直接树形DP。
凸性出题人告诉了。
凸性优化DP
例题
sequence
令 \(a_i:=a_i-i\),\(b_i:=b_i-i\)
\(dp_{i,j}\) 考虑到\(i\), \(b_i=j\)
\[dp_{i,j}=\min \left\{ dp_{i-1,k} \right\} + |j-a_i|
\]
- \(dp_{i,*}\), 凸
- 维护函数拐点