wqs二分的一些性质和细节

wqs 二分共线情况的处理

在我们进行 wqs 二分时,需要要求函数是具有凸性的,但是有时候最终所求的点在函数上可能和前后的几个点共线,这时我们在应该如何更新答案呢?
此时的取值方式和你二分的 check 写法有关。
我们以上凸壳为例:
check 会对每个斜率求出一个转移的次数。
当我们出现几点共线而我们要求的次数正好在中间时,我们可以钦定让 check 求出最大的转移次数,并判断如果次数 m 就更新。
或者说钦定让 check 求出最小的转移次数,并判断如果次数 m 就更新。
引导博客: https://zhuanlan.zhihu.com/p/340514421#ref_1

那如果我们不太好直接获得最大或最小次数的转移点呢?
我们可以对每个状态多记两个他转移次数的最大值和最小值,在转移时同时更新,以此来判断共线的答案。
引导博客:https://www.luogu.com/article/tn3ojd4r

wqs 二分与费用流

假设我们做最小费用最大流,那每次增广时流量的最短路长度单调递增。
把这个东西当做斜率,即以最小费用为 f(x),流量为 x 的函数下凸。
引导博客:https://www.luogu.com.cn/article/knpufhxe (这个博客的结论好像不太对)

posted @   programmingysx  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
点击右上角即可分享
微信分享提示