#include <bits/stdc++.h>
#define ll long long
using namespace std;
ll a[20005];
int main()
{
ll n,p,s,sum=0;
ll ans;
scanf("%lld",&n);
for(ll i=0;i<n;i++)
{
scanf("%lld",&a[i]);
sum+=a[i];
}
sort(a,a+n);
scanf("%lld %lld",&p,&s);
if((sum-n*a[0])*p<=s)
{
s-=(sum-n*a[0])*p; ans=a[0];
while((n*p)<=s&&ans>0) s-=n*p,ans--;
}else {
ll numb=1; ans=a[n-1];
for(ll i=n-1;i>0;i--)
{
if((a[i]-a[i-1])*p*numb<=s)
s-=(a[i]-a[i-1])*p*numb,numb++,ans=a[i-1];
else {
while(numb*p<=s&&ans>0)ans--,s-=numb*p;
if(ans<a[i-1])ans=a[i-1];
break;
}
}
}
if(ans==0)ans=1;
printf("%lld\n",ans);
return 0;
}
#define ll long long
using namespace std;
ll a[20005];
int main()
{
ll n,p,s,sum=0;
ll ans;
scanf("%lld",&n);
for(ll i=0;i<n;i++)
{
scanf("%lld",&a[i]);
sum+=a[i];
}
sort(a,a+n);
scanf("%lld %lld",&p,&s);
if((sum-n*a[0])*p<=s)
{
s-=(sum-n*a[0])*p; ans=a[0];
while((n*p)<=s&&ans>0) s-=n*p,ans--;
}else {
ll numb=1; ans=a[n-1];
for(ll i=n-1;i>0;i--)
{
if((a[i]-a[i-1])*p*numb<=s)
s-=(a[i]-a[i-1])*p*numb,numb++,ans=a[i-1];
else {
while(numb*p<=s&&ans>0)ans--,s-=numb*p;
if(ans<a[i-1])ans=a[i-1];
break;
}
}
}
if(ans==0)ans=1;
printf("%lld\n",ans);
return 0;
}