zoukankan      html  css  js  c++  java
  • bzoj 1816

    不看题解绝对想不出二分答案。。。。

     1 #include<bits/stdc++.h>
     2 #define inc(i,l,r) for(i=l;i<=r;i++)
     3 #define dec(i,l,r) for(i=l;i>=r;i--)
     4 #define inf 1e9
     5 #define mem(a) memset(a,0,sizeof(a))
     6 #define ll long long
     7 #define NM 55
     8 using namespace std;
     9 int read(){
    10     int x=0,f=1;char ch=getchar();
    11     while(!isdigit(ch)){if(ch=='-')f=-1;ch=getchar();}
    12     while(isdigit(ch))x=x*10+ch-'0',ch=getchar();
    13     return x*f;
    14 }
    15 int a[NM],n,m,i,l,r,s;
    16 int check(int x){
    17     int i,t=min(x,m);
    18     inc(i,1,n)
    19     if(a[i]<x){
    20         t-=x-a[i];
    21         if(t<0)return false;
    22     }
    23     return true;
    24 }
    25 int main(){
    26     n=read();m=read();
    27     inc(i,1,n)a[i]=read();
    28     l=0;r=inf;
    29     while(l<=r){
    30         int t=l+r>>1;
    31         if(!check(t))r=t-1;
    32         else l=t+1,s=t;
    33     }
    34     printf("%d",s);
    35     return 0;
    36 }
    View Code
  • 相关阅读:
    字符串类型
    数据类型之整型
    数据类型
    两个版本的区别
    变量
    DHCP
    MySQL数据库编译及入门
    NFS网络文件系统
    Rsync 数据同步
    互联网数据分享平台
  • 原文地址:https://www.cnblogs.com/onlyRP/p/4748130.html
Copyright © 2011-2022 走看看