刷水ing…
AC code:
#include <cstdio>
#include <climits>
typedef long long ll;
const ll N=51;
ll n,m;
ll c[N];
bool check(ll x){
ll t=m<x?m:x;
for(ll i=1;i<=n;i++) t-=x-c[i]>0?x-c[i]:0;
return t>=0;
}
int main(){
scanf("%lld%lld",&n,&m);
for(ll i=1;i<=n;i++) scanf("%lld",&c[i]);
ll L=0,R=LONG_LONG_MAX>>15,M=(L+R)>>1;
while(L+1!=R){
if(check(M)) L=M;
else R=M;
M=(L+R)>>1;
}
printf("%lld\n",L);
return 0;
}