60pts求调
查看原帖
60pts求调
368764
Love_Haruka楼主2024/11/2 20:19

rt

long long 也都开了但是为什么过不了阿QAQ


#include<bits/stdc++.h>
using namespace std;
long long n,m;
long long a[200006];
bool check(long long mid){
    long long ans=0;
    for(int i=0;i<n;i++){
        if(a[i]>mid)ans+=a[i]-mid;
    }
    if(ans>=m)return 1;
    return 0;
}
int main(){
    cin >> n >> m;
    long long Max=-1;
    for(int i=0;i<n;i++){
        cin >> a[i];
        Max=max(Max,a[i]);
    }
    long long l=0,r=Max;
    while(l<r){
        long long mid=(l+r+1)>>1;
        if(check(mid)){
            l=mid;
        }else r=mid-1;
    }
    cout << l;
    return 0;
}

2024/11/2 20:19
加载中...