import math



n, a, b = list(map(int, input().split()))

hs = list(map(int, (eval(input()) for _ in range(n))))



m = sum(hs) // (a + (n-1)*b) - 10

M = sum(math.ceil(h/a) for h in hs)



def killable(p, hs, a, b):

    x = sum(max(0, math.ceil((h-p*b) / (a-b))) for h in hs)

    return x <= p



while(m+1 < M):

    c = (m+M) // 2

    if killable(c, hs, a, b):

        M = c

    else:

        m = c

print(M)
import math



n, a, b = list(map(int, input().split()))

hs = list(map(int, (eval(input()) for _ in range(n))))



m = sum(hs) // (a + (n-1)*b) - 1

#M = sum(math.ceil(h/a) for h in hs)

M = max(hs) // b + 1



def killable(p, hs, a, b):

    x = sum(max(0, math.ceil((h-p*b) / (a-b))) for h in hs)

    return x <= p



while(m+1 < M):

    c = (m+M) // 2

    if killable(c, hs, a, b):

        M = c

    else:

        m = c

print(M)
import math

n, a, b = list(map(int, input().split()))
hs = list(map(int, (eval(input()) for _ in range(n))))
m = sum(hs) // (a + (n - 1) * b) - 10
M = sum(math.ceil(h / a) for h in hs)


def killable(p, hs, a, b):
    x = sum(max(0, math.ceil((h - p * b) / (a - b))) for h in hs)
    return x <= p


while m + 1 < M:
    c = (m + M) // 2
    if killable(c, hs, a, b):
        M = c
    else:
        m = c
print(M)

import math

n, a, b = list(map(int, input().split()))
hs = list(map(int, (eval(input()) for _ in range(n))))
m = sum(hs) // (a + (n - 1) * b) - 1
# M = sum(math.ceil(h/a) for h in hs)
M = max(hs) // b + 1


def killable(p, hs, a, b):
    x = sum(max(0, math.ceil((h - p * b) / (a - b))) for h in hs)
    return x <= p


while m + 1 < M:
    c = (m + M) // 2
    if killable(c, hs, a, b):
        M = c
    else:
        m = c
print(M)

-m = sum(hs) // (a + (n - 1) * b) - 10 -M = sum(math.ceil(h / a) for h in hs) +m = sum(hs) // (a + (n - 1) * b) - 1 +# M = sum(math.ceil(h/a) for h in hs) +M = max(hs) // b + 1