#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<stack>
#include<queue>
#include<set>
#include<map>
#include<vector>
#define N 1001000
#define INF 10000000000
#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........
ll w[N];
ll n;
ll a,b;
ll maxn=-INF;
using namespace std;
ll Check(ll ans)
{
    ll sum=0;
    for (ll i=0;i<n;i++)
    {
        ll temp=w[i]-ans*b;
        if (temp>0)
        {
              sum+= temp/(a-b);
              if (temp%(a-b))
                sum++;
            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()
{
    scanf("%lld%lld%lld",&n,&a,&b);
    for (ll i=0;i<n;i++)
       {
            scanf("%lld",&w[i]);
            maxn=max(maxn,w[i]);
       }
       solve();

    return 0;
}
