#include<bits/stdc++.h> using namespace std; long long n,m,a[1000100],o,k; int main(){ cin>>n>>m; for(int i=1;i<=n;i++){ cin>>a[i]; o=max(o,a[i]); } int l=1; long long r=o; while(l<=r){ long long ans=0; long long k=(l+r)/2; for(int i=1;i<=n;i++){ if(a[i]>k)ans+=(a[i]-k); } if(ans==m){ cout<<k; return 0; } else if(ans<m){ r=k-1; } else if(ans>m){ l=k+1; } } return 0; } /************************************************************** Problem: 1908 User: zengdongxin Language: C++ Result: Wrong Answer ****************************************************************/