import math

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

H = [int(eval(input())) for _ in range(N)]

low = sum(H)//((N-1)*B+A)-1

high = max(H)//B+1

while high-low>1:

    mid = (high+low)//2

    cnt = 0

    for i in range(N):

        cnt += math.ceil(max(H[i]-mid*B,0)/(A-B))

    if cnt<=mid:

        high = mid

    else:

        low = mid

print(high)
import math

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

H = [int(eval(input())) for _ in range(N)]

d = A-B

high = 10**9

low = 0

while high-low>1:

    mid = (high+low)//2

    D = []

    for i in range(N):

        if H[i]-mid*B>0:

            D.append(H[i]-mid*B)

    cnt = 0

    for h in D:

        cnt += math.ceil(h/d)

    if cnt<=mid:

        high = mid

    else:

        low = mid

print(high)
import math

N, A, B = list(map(int, input().split()))
H = [int(eval(input())) for _ in range(N)]
low = sum(H) // ((N - 1) * B + A) - 1
high = max(H) // B + 1
while high - low > 1:
    mid = (high + low) // 2
    cnt = 0
    for i in range(N):
        cnt += math.ceil(max(H[i] - mid * B, 0) / (A - B))
    if cnt <= mid:
        high = mid
    else:
        low = mid
print(high)

import math

N, A, B = list(map(int, input().split()))
H = [int(eval(input())) for _ in range(N)]
d = A - B
high = 10**9
low = 0
while high - low > 1:
    mid = (high + low) // 2
    D = []
    for i in range(N):
        if H[i] - mid * B > 0:
            D.append(H[i] - mid * B)
    cnt = 0
    for h in D:
        cnt += math.ceil(h / d)
    if cnt <= mid:
        high = mid
    else:
        low = mid
print(high)

-low = sum(H) // ((N - 1) * B + A) - 1 -high = max(H) // B + 1 +d = A - B +high = 10**9 +low = 0 +    D = [] +    for i in range(N): +        if H[i] - mid * B > 0: +            D.append(H[i] - mid * B) -    for i in range(N): -        cnt += math.ceil(max(H[i] - mid * B, 0) / (A - B)) +    for h in D: +        cnt += math.ceil(h / d)