技巧与思想---二分
小松萘
厉害的人可真多啊
展开
-
算法复习 - AcWing二分
102. 最佳牛围栏???? ???? ????//二分+验证//对于一段序列,每个数减去我们所算的平均数//如果大于0 那么他本身就大于平均数,如果小于0 那么它本身就小于平均数//该序列的平均值如果大于等于我们枚举的,那区间和应该大于等于0//所以我们枚举右端点,寻找最小的左端点即可//一般子区间的最值问题//都是枚举左/右端点,然后对应维护另一个端点的最值int n,m,cow[MX];double sum[MX];int check(double x){ rpp(原创 2020-09-16 19:06:28 · 127 阅读 · 0 评论 -
CodeForces - 1077D Cutting Out (二分)
???? ???? ????纪念一下自己又忘了二分这个算法,我好傻QAQ,太久不写,简直像康复训练map<int,int>mp;set<int>s;vector<pii>v;vector<pii> ans,res;int n,k;int check(int mid){ ans.clear(); int tmp=k; for(auto x:v) { int mx=min(tmp,x.first/mi原创 2020-05-09 21:38:02 · 170 阅读 · 0 评论 -
Codeforces Round #562 (Div. 2) C - Increasing by Modulo (二分加检验)
???? ???? ????//0 1 2 3 4 5//相当于对每个元素分别操作,操作最多的元素操作数量//二分加检验//signed main(){ int n,m;cin>>n>>m; vector<int>a(n),b(n);cin>>a; int l=0,r=m,ans=0; while(l<=r) { int mid=(l+...原创 2020-01-27 21:02:03 · 141 阅读 · 0 评论 -
Codeforces Round #608 (Div. 2) E - Common Number (二分 思维)
???? ???? ????题意:首先我们可以按照题意把 1 ~ n 的路径画一下,比如这里取 n = 14 ,就可以得到下面这个可爱的树????从这个树可以得出几个结论:1.数值x在1~n中出现的次数等于以他为根节点的树的大小;2.子树大小分奇偶有序,如:1 > 3 > 5 > 7,但 3与4大小不确定,所以必须分奇偶二分;3.为了方便计算某节点为根的子树大小,我们规定奇数为左子树,偶数...原创 2019-12-23 11:13:05 · 253 阅读 · 0 评论