#include <bits/stdc++.h>
using namespace std;
int n, x, p, q;
double r;
int ans = 0;
int a[1100000];
int slep = 0;//前i天睡觉时间
/*inline char nc(){
static char buf[100000],*p1=buf,*p2=buf;
return p1==p1&&(p2=(p1=buf)+fread(buf,1,100000,stdin),p1==p2)?EOF:*p1++;
}*/
inline int read() {
int x=0,m=1;
char ch=getchar();
while(!isdigit(ch)) {
if(ch == '-') m=-1;
ch=getchar();
}
while(isdigit(ch)) {
x = x * 10 + ch - 48;
ch = getchar();
}
return x * m;
}
inline void write(int x) {
if(x<0) {
putchar('-');
write(-x);
return;
}
if(x>=10) write(x/10);
putchar( x % 10 + '0' );
}
//inline void chmax(ll& a, ll b) { if (a < b) a = b; }
signed main() {
//scanf("%d%d%d%d", &n, &x, &p, &q);
ios_base::sync_with_stdio(false);
n=read();
x=read();
p=read();
q=read();
r = 1.0 * p / (1.0 * q);
r = r * (1.0 * x);
for (int i = 1; i <= n; i++)
a[i]=read();
for (int i = 1; i <= n;) {
int xx = x;
double yaoshui = r * (1.0 * (1 + ans));
while (1.0 * slep + 1.0 * (xx - a[i]) >= yaoshui && i <= n) {
if (xx - a[i] > 0) xx -= a[i++];
else break;
if (xx < a[i]) break;
//cout << ans << "</>" << 1.0 * slep + 1.0 * (xx - a[i]) << " " <<
//yaoshui << ": " << xx << endl;
}
slep += 1.0 * xx;
ans++;
}
write(ans);
return 0;
}
Sub1 T了2个
Sub2 20分
Sub3 T了5个
Sub4 T了1个
Sub5 T了2个