50分WA求调
查看原帖
50分WA求调
1054383
c_legg楼主2024/9/8 19:51
#include <iostream>
using namespace std;

int a[1000001];
int n, m;

int check(int x) {
  int ans=0;
  for(int i=0; i<n; i++) {
    if(x<=a[i]) ans+=a[i]-x;
  }
  return ans;
}

int main() {
  cin>>n>>m;
  for(int i=0; i<n; i++) cin>>a[i];
  int l=-1, r=m;
  while(l+1<r) {
    int mid=(l+r)>>1;
    int c=check(mid);
    if(c>m) {
      l=mid;
    }else if(c==m) {
      cout<<mid;
      return 0;
    }else {
      r=mid;
    }
  }
  cout<<l;
  return 0;
}
2024/9/8 19:51
加载中...