随笔分类 - DP——wqs二分
摘要:CXLI.[八省联考2018]林克卡特树 一眼发现函数是凸的。然后思考发现直接一个树形DP就能进行二分的check:设 \(f_{i,0/1/2}\) 分别表示节点 \(i\),其中 \(i\) 未被选/是一条链的链顶/被一条链经过,然后直接DP就行。 为什么二分边界要开到 \(10^{12}\)
阅读全文
摘要:CXL.忘情 wqs二分水题,明显那个式子可以被化成 \((1+\sum x)^2\),于是可以斜率优化,然后又明显随着段数越分越多函数是凹的,于是可以简单wqs二分。时间复杂度 \(O(n\log n)\)。 需要注意的是,因为二分上界是 \(10^{18}\),所以得开 __int128。 代码
阅读全文
摘要:CXXXVIII.CF739E Gosha is hunting 因为 \(n\) 是 \(2000\),我们可以想出设一个二维状态来保证 \(n,a\) 这两维,然后再wqs二分 \(b\) 这一维。(明显,随着 \(b\) 越来越大,呈现一凸函数)。 时间复杂度 \(O(n^2\log n)\)
阅读全文
摘要:CXXXVII.[国家集训队]Tree I 两年前刚学MST时做这题WA了,然后两年后才把它补上…… 明显直接wqs二分就行了。 代码: #include<bits/stdc++.h> using namespace std; int n,m,q,dsu[50100],ip; int read(){
阅读全文
摘要:CXXXVI.[IOI2000] 邮局 加强版 Observation 1. 若一段村庄中设一个邮局,则邮局一定设在其中位数(若是偶数则任一中位数)的位置。 Observation 2. 若令 \(w(l,r)\) 为区间 \((l,r)\) 中村庄设一个邮局的费用,则其满足四边形不等式。 Obse
阅读全文
摘要:CXXXIII.[HDU6094]Rikka with K-Match 依旧wqs二分。 首先,依据我们之前提到过的一个性质,“凡是可以表示成费用流模型的东西都有凹凸性”,本题也不例外,关于匹配个数的函数是凹的。 凹的就可以wqs二分。于是问题转换为最小权任意匹配。因为 \(m\) 只有 \(4\)
阅读全文
摘要:CXXXII.[GYM102268J]Jealous Split wqs二分。 首先,先讲一下wqs二分的应用条件: 对于某个函数 \(f(x)\) 和一个特定的 \(x\),要求出 \(f(x)\) 的值的复杂度是不可接受的;但是,若满足 \(f\) 是上凸/下凹的,且对于一个给定的 \(k\),
阅读全文

浙公网安备 33010602011771号