80求条
查看原帖
80求条
1342002
__^浅笑.__楼主2025/6/14 16:44
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define re return
#define ew 5005
#define sz 10000005
#define sscc cout<<6;
const int MOD=1e9+7;
int n,li;
int a[sz];
bool cmp(int x,int y){
	return x>y;
}
bool check(int x){
	int sum=0;
	int lll=li;
	for(int i=1;i<=n;i++){
		if(a[i]>=x){
			sum++;
		}
		else{
			if(lll>=x-a[i]){
				sum++;
				lll-=x-a[i];
			}
		}
	}
	re sum>=x;
}
signed main(){
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin>>n>>li;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	sort(a+1,a+n+1,cmp);
	int l=-1;
	int r=sz;
	while(l+1<r){
		int mid=(l+r)/2;
		if(check(mid)){
			l=mid;
		}
		else{
			r=mid;
		}
	}
	cout<<l;
	re 0;
}

2025/6/14 16:44
加载中...