30fen
查看原帖
30fen
1057034
Dark_into_Lie楼主2023/8/7 10:23
#include<bits/stdc++.h>
using namespace std;

int h[1000005];
int n,m;

bool chk(int x){
    long long sum  = 0;
    for(int i = 1;i <= n;i++) if(h[i] > x) sum += h[i] - x;
    return sum >= m;
}

int main(){
    cin >> n >> m;
    for(int i = 1;i <= n;i++) cin >> h[i];
    int l = 0,r = n,ans = -1;
    while(l <= r){
        int mid = l + r >> 1;
        if(chk(mid)){
            ans = mid;
            l = mid + 1;
        }
        else r = mid - 1;
    }
    cout << ans << endl;
    return 0;
}
2023/8/7 10:23
加载中...