【学习笔记】WQS二分
2.5.1【定义】
通过二分附加权值,将恰好选 k 个的限制优化问题转化为不限制个数的简单 DP,省掉一维状态。
2.5.2【适用条件】
-
设 \(f(k)\) 为恰好选 \(k\) 个的最优值
-
\(f(k)\) 必须是凸函数(上凸求最大,下凸求最小)
2.5.3【算法流程】
-
二分附加权值 \(mid\):每选一个物品额外增加代价 \(mid\)
-
运行无限制 DP:记录最优值 \(val\) 和对应的选择个数 \(cnt\)
-
调整边界:
-
\(cnt >= k\) → 选多了,增大代价(\(l = mid + 1\)),记录 \(ans = val - mid * k\)
-
\(cnt < k\) → 选少了,减小代价(\(r = mid - 1\))
-
-
输出 \(ans\)
2.5.4【复杂度】
\(O(n \log V)\),\(V\) 为权值范围,$\log V \approx 30 \sim 60$
2.5.5【例题】
-
P2619 Tree I — wqs二分 + 最小生成树
-
P4983 忘情 — wqs二分 + 斜率优化DP

浙公网安备 33010602011771号