N, A, B = list(map( int, input().split()))

H = [0]*N

hmax = 0

for i in range(N):

    h = int( eval(input()))

    H[i] = h

    hmax = max( h, hmax)



L = 0

R = hmax//B + 1

add = A-B

while L != R:

    now = (L+R)//2

    need = 0

    for i in range(N):

        if H[i] > now*B:

            need += (H[i]-1-now*B)//add + 1

    if need <= now:

        R = now

    else:

        L = now+1

print(L)
N, A, B = list(map( int, input().split()))

H = [0]*N

hmax = 0

for i in range(N):

    h = int( eval(input()))

    H[i] = h

    hmax = max( h, hmax)



L = 0

R = hmax//B + 1

add = A-B

while L != R:

    now = (L+R)//2

    need = 0

    for i in range(N):

        if H[i] > now*B:

            need += (H[i]-1-now*B)//add + 1

    if need <= now:#うまくいくとき

        R = now

    else:#うまくいかないとき

        L = now+1#うまく行かないので+1している．これがないと無限ループが発生する。

print(L)
N, A, B = list(map(int, input().split()))
H = [0] * N
hmax = 0
for i in range(N):
    h = int(eval(input()))
    H[i] = h
    hmax = max(h, hmax)
L = 0
R = hmax // B + 1
add = A - B
while L != R:
    now = (L + R) // 2
    need = 0
    for i in range(N):
        if H[i] > now * B:
            need += (H[i] - 1 - now * B) // add + 1
    if need <= now:
        R = now
    else:
        L = now + 1
print(L)

N, A, B = list(map(int, input().split()))
H = [0] * N
hmax = 0
for i in range(N):
    h = int(eval(input()))
    H[i] = h
    hmax = max(h, hmax)
L = 0
R = hmax // B + 1
add = A - B
while L != R:
    now = (L + R) // 2
    need = 0
    for i in range(N):
        if H[i] > now * B:
            need += (H[i] - 1 - now * B) // add + 1
    if need <= now:  # うまくいくとき
        R = now
    else:  # うまくいかないとき
        L = now + 1  # うまく行かないので+1している．これがないと無限ループが発生する。
print(L)

-    if need <= now: +    if need <= now:  # うまくいくとき -    else: -        L = now + 1 +    else:  # うまくいかないとき +        L = now + 1  # うまく行かないので+1している．これがないと無限ループが発生する。