#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<stack>
#include<queue>
#include<set>
#include<map>
#include<vector>
#define N 100000
#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........
using namespace std;
int n, a, b, w[N+3];
bool Check(ll ans)
{
   ll 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 false;
        }
    }
    return true;
}
int main()
{
    while(~scanf("%d%d%d",&n,&a,&b))
    {
        int Max = 0;
        for(int i=0; i<n; ++i) scanf("%d",&w[i]), Max = max(Max, w[i]);
        ll left=0, right=Max;
        while(left<right)
        {
            ll mid = (left+right)/2;
            if(Check(mid))
                right=mid;
            else left=mid+1;
        }
        printf("%lld\n",right);
    }
    return 0;
}
