#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<stack>
#include<queue>
#include<set>
#include<map>
#include<vector>
#define N 100100
#define mem(a,b) memset(a,b,sizeof(a))
#define sqr(x)   return x*x
#define abs(x)   return x>0?x:(-x)
typedef long long ll;
//coding.........................
int  w[N];
int  n;
int  a,b;
int  maxn=0;
using namespace std;
int  Check(ll ans)
{
    int sum=0;
    for (int  i=0;i<n;i++)
    {
        ll temp=(ll)(w[i]-ans*b);
        if (temp>0)
        {
              sum += (int)ceil(temp*1.0/(a-b));
            if (sum>ans||sum<0)
                return 0;
        }
    }
     return 1;
}

void solve()
{
    ll left=0,right=maxn;
    while (left<right)
    {
        ll mid=(left+right)/2;
        if (Check(mid))
         right=mid;
        else
            left=mid+1;
    }
    printf("%lld\n",right);
}
int main()
{
   while(~scanf("%d%d%d",&n,&a,&b))
   {
       maxn=0;
       for (int  i=0;i<n;i++)
       {
            scanf("%d",&w[i]);
            maxn=max(maxn,w[i]);
       }
       solve();
   }


    return 0;
}
