BZOJ_5311_贞鱼_决策单调性+带权二分 Description 众所周知,贞鱼是一种高智商水生动物.不过他们到了陆地上智商会减半. 这不?他们遇到了大麻烦! n只贞鱼到陆地上乘车,现在有k辆汽车可以租用. 由于贞鱼们并不能在陆地上自由行走,一辆车只能载一段连续的贞鱼. 贞鱼们互相有着深深的怨念,每一对贞鱼之间有怨气值. 第i只贞鱼与第j只贞鱼的怨气值记为Yij,且Yij=Yji,Yii=0. 每辆车载重不限,但是每一对在同辆车中的贞鱼都会产生怨气值. 当然,超级贞鱼zzp长者希望怨气值的…
BZOJ_4609_[Wf2016]Branch Assignment_决策单调性+带权二分 Description 要完成一个由s个子项目组成的项目,给b(b>=s)个部门分配,从而把b个部门分成s个组.分组完成后,每一组的任 意两个点之间都要传递信息.假设在(i,j)两个点间传送信息,要先把信息加密,然后快递员从i出发到总部,再加 密,在到j点.出于安全原因,每次只能携带一条消息.现在给出了道路网络.各个部门和总部的位置,请输出快 递员要走的最小总距离. Input 第一行包含四个整数n,b…
前缀和优化 当DP过程中需要反复从一个求和式转移的话,可以先把它预处理一下.运算一般都要满足可减性. 比较naive就不展开了. 题目 [Todo]洛谷P2513 [HAOI2009]逆序对数列 [Done]洛谷P2511 [HAOI2008]木棍分割 [Done]洛谷P4099 [HEOI2013]SAO [Done]NOIAC37 染色 单调队列优化 前置技能:单调队列(经典的问题模型:洛谷P1886 滑动窗口) 用于优化形如\(f_i=\min/\max_{j=l_i}^{i-1}\{g_…
BZOJ_2369_区间_决策单调性 Description 对于一个区间集合 {A1,A2……Ak}(K>1,Ai不等于Aj(i不等于J),定义其权值   S=|A1∪A2∪……AK|*|A1∩A2……∩Ak| 即它们的交区间的长度乘上它们并区间的长度. 显然,如果这些区间没有交集则权值为0. Your Task 给定你若干互不相等的区间,选出若干区间使其权值最大. Input 第一行n表示区间的个数 接下来n行每行两个整数l r描述一个区间[l,r] Output   在一行中输出最大权值…
题目链接 很容易写出\(O(n^2k)\)的DP方程.然后显然决策点是单调的,于是维护决策点就可以了.. 这个过程看代码或者别的博客吧我不写了..(其实是忘了) 这样复杂度\(O(nk\log n)\).但是在BZOJ T了=-=. \(k\)可以带权二分优化到\(O(n\log k\log n)\)就能过了吧. 不想改了. 我特么学的是假的单调.. 又是zz错误浪费半下午(╯‵□′)╯︵┴─┴ 辣鸡题还卡时间 不过就不过吧mmp Upd: Codeforces 321E.Ciel and Go…
题目链接 \(Description\) 给定一棵边带权的树.求删掉K条边.再连上K条权为0的边后,新树的最大直径. \(n,K\leq3\times10^5\). \(Solution\) 题目可以转化为,求树上不相交的\(k+1\)条链,使得它们的边权和最大(已不想再说什么了..). 选择链数越多,答案增长得越慢,减少的时候还会减少得越快,即形成了一个\(K-Ans_K\)的上凸包:而如果没有链数的限制,DP是很容易的(有链数得加一维\(k\)). 带权二分.DP用\(f[x][0/1/2]…
洛谷题目传送门 给一个比较有逼格的名词--WQS二分/带权二分/DP凸优化(当然这题不是DP). 用来解决一种特定类型的问题: 有\(n\)个物品,选择每一个都会有相应的权值,需要求出强制选\(need\)个物品时的最大/最小权值和. 一般来说,我们求不限制个数的最大/最小权值和很容易,但在限制个数的前提下再求最值会变得有点困难.比较低效的做法是对状态再加设一个维度表示已选物品数量,然后通过DP等方法求出. 应用前提:设\(g_x\)为强制选\(x\)个物品的最大/最小权值和,如果所有的点对\(…
题目:https://www.luogu.org/problemnew/show/P4383 关于带权二分:https://www.cnblogs.com/flashhu/p/9480669.html 自己只能想到 “如果把负边看作不存在,那么分出的连通块的直径一定可以被整个连进最终路径里”.然后就不知道连通块不是恰好 K+1 个怎么办,且也不知道是不是对的…… 原来可以直接把问题看成 “选出恰好 K+1 条不相交路径” .这样也考虑到了 “恰好 K 条” 的限制,并且好像挺对的. 结果自己还是…
丘中有麻plant 改自这儿,by ZBQ. 还有隐藏的一页不放了.. 直接走下去的话,如果开始时间确定那么到每个点的时间确定,把time减去dis就可以去掉路程的影响了. 这样对于减去d后的t,如果想要摘一部分,那么应是取其中最大的t恰好摘它,其它t较小的会早熟然后等着..(意会一下吧) 所以t大的会对t小的产生贡献,而要恰好摘t小的,那就摘不了t大的了. 所以对t排序并不会影响答案.从小到大依次分K段就行了.i对其中每个作物j的贡献是ti-tj. 注意t相等时虽然会同时摘,但是不能直接去重!…
题目链接 \(Description\) 有\(n\)只精灵,两种精灵球(高级和低级),每种球能捕捉到第\(i\)只精灵的概率已知.求用\(A\)个低级球和\(B\)个高级球能捕捉到精灵数的最大期望. \(n\leq10^5\). \(Solution\) 设\(f[i][a][b]\)表示前\(i\)只用了\(a\)个低级球,\(b\)个高级球的最大期望.转移时四种情况显然.复杂度\(\mathcal O(nAB)\). 随着某种球可使用数的增多,f应是凸函数,即增长越来越慢.而且两种球都满足…