#include<iostream>
#include<vector>
using namespace std;
int main()
{
  int N,A,B,C;
  cin>>N>>A>>B>>C;
  vector<int>D(N,0);
  for(int i=0;i<N;i++)cin>>D[i];
  vector< vector<int> >dp(N+1,vector<int>(A+N*B+1,0));
  dp[0][A]=C;
  for(int i=0;i<N;i++){
    for(int j=A;j<=A+N*B;j++){
      dp[i+1][j]=max(dp[i+1][j],dp[i][j]);
      if(j+B<=A+N*B)dp[i+1][j+B]=max(dp[i][j+B],dp[i][j]+D[i]);
    }
  }
  int ans=0;
  for(int j=A;j<=A+N*B;j++){
    ans=max(ans,dp[N][j]/j);
  }
  cout<<ans<<endl;
}