
二分
overcastt
这个作者很懒,什么都没留下…
展开
-
bzoj4552 [HEOI2016/TJOI2016]排序(二分+线段树)
题解哇二分..真厉害! 每次二分一个数,然后把小于x的数当做0,大于的当做1 然后对于每一段,想把它排好序,也就是把1和0排好序,也就是把部分改成1、部分改成0。而这一段里面有几个1就可以区间和解决了。 即如果已经求出这段有cnt个1,升序操作[l,r-cnt]=0,[r-cnt+1,r]=1;降序操作[l,l+cnt-1]=1,[l-cnt,r]=0代码#include &...原创 2018-03-21 21:33:36 · 342 阅读 · 0 评论 -
bzoj1181: [CROATIAN2009]IZBROI选举(二分+dp)
Problem一共有 VVV 张投票,nnn 个政党,mmm 个席位。现在每个政党有 aiaia_i 张票。对于每个政党,问通过给这个 nnn 个政党分配剩下的票,使得这个政党得到最多、最少席位是多少个。 席位得分配:对于所有政党,计算一次值:票数÷÷\div(席位数+1+1+1),然后给值最大的政党一个席位(若值相同,则编号小的政党获得)。重复此过程,直到席位分配完。Solutio...原创 2018-09-11 15:41:33 · 437 阅读 · 0 评论 -
bzoj2811: [Apio2012]Guard(二分+差分)
Problem有 nnn 个灌木丛,其中有 kkk 个后面有士兵 mmm 个区间,每个区间zhi’shaSolution首先,我们可以把是 000 的区间删去,然后对序列进行重标号 做法:差分/线段树重标号后,nnn 发生变换 此时这 nnn 个点都是可以放士兵的 那么我们可以特判掉 n=kn=kn=k 的情况然后我们发现如果又两个区间 (l1,r1),(l2,r...原创 2018-09-11 07:39:31 · 282 阅读 · 0 评论 -
bzoj5194: [Usaco2018 Feb]Snow Boots (二分+并查集)
Problem有 nnn 块砖,上面有厚度为 aiaia_i 的积雪 有 BBB 双靴子,他能走 didid_i 步,能走积雪小于 viviv_i 的积雪Solution我们可以对于每一双靴子,将积雪量大于靴子能承受的给 111,其余给 000。每个靴子能走 didid_i 步,因此最长连续 111 的长度大于靴子的步数就说明不能走到;反正可以。 问题转化为求最长连续 1...原创 2018-09-14 18:27:10 · 197 阅读 · 0 评论