P1843 奶牛晒衣服

链接:Miku

--------------------------------

这是一道二分答案的题,我们要二分时间。

对于每件衣服,我们自然是能让它自己蒸发就自己蒸发,这样才是最优的。

那么我闷可以把每一件衣服减去自己蒸发的后,剩下的用洗衣机蒸发。

不过坑点是,你可能减出来个负数

----------------------------------

奶牛为什么要穿衣服

---------------------------------

#include<iostream>
using namespace std;
long long  l,r;
long long  n,a,b;
long long  w[500001];
bool c(long long  k){
    long long  cnt=0;
    for(long long  i=1;i<=n;++i){
        long long  v=w[i]-a*k;
        if(v<0)
        v=0;
        cnt+=(v/b);
        if(v%b)
    cnt++;
    }
//    cout<<k<<endl;
    //cout<<"fddf"<<cnt<<endl;
    return cnt<=k;
}
int  main(){
    cin>>n>>a>>b;
    for(long long  i=1;i<=n;++i){
        cin>>w[i];
        r=max(r,w[i]);
    }
    while(l<=r){
        long long  mid=l+(r-l)/2;
        if(c(mid)) r=mid-1;
        else
        l=mid+1;
    }
    //cout<<l;
    cout<<l;
    return 0;
}
Ac
posted @ 2020-01-17 22:25  Simex  阅读(86)  评论(0编辑  收藏  举报