1 条题解
-
1
#include<bits/stdc++.h> using namespace std; long long n,m,s; long long a[1000010]; long long pan(long long h){ long long tot=0; for(int i=1;i<=n;i++) if(a[i]>=h) tot+=a[i]-h; if(tot>=m) return 1; else return 0; } int main(){ long long l=0,r=400000; cin>>n>>m; for(int i=1;i<=n;i++) cin>>a[i]; while(l<=r){ int mid=(l+r)/2; if(pan(mid)){ l=mid+1; s=mid; } else r=mid-1; } cout<<s; return 0; }
信息
- ID
- 839
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 3
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者