【学习笔记】WQS二分

2.5.1【定义】

通过二分附加权值,将恰好选 k 个的限制优化问题转化为不限制个数的简单 DP,省掉一维状态。

2.5.2【适用条件】

  • \(f(k)\) 为恰好选 \(k\) 个的最优值

  • \(f(k)\) 必须是凸函数(上凸求最大,下凸求最小)

2.5.3【算法流程】

  1. 二分附加权值 \(mid\):每选一个物品额外增加代价 \(mid\)

  2. 运行无限制 DP:记录最优值 \(val\) 和对应的选择个数 \(cnt\)

  3. 调整边界

    • \(cnt >= k\) → 选多了,增大代价(\(l = mid + 1\)),记录 \(ans = val - mid * k\)

    • \(cnt < k\) → 选少了,减小代价(\(r = mid - 1\)

  4. 输出 \(ans\)

2.5.4【复杂度】

\(O(n \log V)\)\(V\) 为权值范围,$\log V \approx 30 \sim 60$


2.5.5【例题】

posted @ 2026-08-21 15:16  Aistyr  阅读(7)  评论(0)    收藏  举报