学习讨论
2025-11-22 17:01:49
发布于:上海
0阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a[1000005],n,m;
ll f(ll t){
ll sum=0;
for(int i=1;i<=n;i++){
if(a[i]>t)sum+=a[i]-t;
}
return sum;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
cin>>n>>m;
ll l=1,r=0,ans;
for(int i=1;i<=n;i++){
cin>>a[i];
r=max(r,a[i]);
}
while(l<=r){
ll mid=(l+r)/2;
ll k=f(mid);
if(k>=m){ans=mid;l=mid+1;}
else r=mid-1;
}
cout<<ans;
return 0;
}
这里空空如也







有帮助,赞一个