所以我要玄关,所以
查看原帖
所以我要玄关,所以
1252442
lucy2012楼主2024/4/28 12:53

为什么这样是错滴

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,m,a[1000010];
int find(int x){
	ll sum=0;
	for(int i=1;i<=n;i++){
		if(a[i]>x)
		    sum+=a[i]-x; 
	}
	if(sum>=m)
	    return 1;
	else
	    return 0;
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++)
	    cin>>a[i]; 
	ll l=1,r=n+1,mid;
	while(l<r){
		mid=(l+r)/2;
		if(find(mid))
		    l=mid+1;
		else
		    r=mid;
	}
	cout<<l;
	return 0;
}
2024/4/28 12:53
加载中...