#include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long LL; const int MR=1e5+10; int n,A,B,X,Y,h[MR]; int b[MR]; bool cmp(int x,int y){ return x%X>y%X; } bool check(int k){ int a=A; LL sum=0; int cnt=0; for(int i=1;i<=n;i++){ if(h[i]<=k) continue; cnt++; b[cnt]=h[i]-k; } sort(b+1,b+cnt+1,cmp); for(int i=1;i<=cnt;i++){ if(a>=b[i]/X){ a-=b[i]/X; b[i]%=X; } else if(a>0){ b[i]-=a*X; a=0; break; } } for(int i=a+1;i<=cnt;i++){ sum+=b[i]; } return sum<=1ll*B*Y; } int main(){ cin>>n>>A>>B>>X>>Y; for(int i=1;i<=n;i++){ cin>>h[i]; } int l=-1,r=1e9+10; while(l+1