hdu 3418 二分

来源:互联网 发布:淘宝高马二溪茶怎么样 编辑:程序博客网 时间:2024/05/16 07:02
#include<iostream>#include<cstdio>using namespace std;const int maxn=105;long long a[105];int main(){    int n,i,m;    long long l,r,sum;    while(scanf("%d%d",&n,&m)!=EOF)    {        scanf("%I64d",a);        l=sum=a[0];        for(i=1;i<n;i++)        {            scanf("%I64d",a+i);            sum+=a[i];            l=min(a[i],l);        }        r=sum/m;        while(l<r)        {            long long mid=(l+r+1)>>1;            for(i=sum=0;i<n;i++)                sum+=min(a[i],mid);            if(sum>=mid*m)                l=mid;            else                r=mid-1;        }        printf("%I64d\n",l);    }    return 0;}

0 0
原创粉丝点击