output_description: Print the minimum number of explosions that needs to be caused in order to
  vanish all the monsters.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N A B
      h_1
      h_2
      :
      h_N
attempt: # -*- coding: utf-8 -*-
  import bisect
  import heapq
  import math
  import random
  from collections import Counter, defaultdict, deque
  from decimal import ROUND_CEILING, ROUND_HALF_UP, Decimal
  from fractions import Fraction
  from functools import lru_cache, reduce
  from itertools import (
      combinations,
      combinations_with_replacement,
      product,
      permutations,
      accumulate,
  )
  from operator import add, mul, sub, itemgetter, attrgetter
  
  
  import sys
  
  # sys.setrecursionlimit(10**6)
  # readline = sys.stdin.buffer.readline
  readline = sys.stdin.readline
  
  INF = 2**62 - 1
  
  
  def read_int():
      return int(readline())
  
  
  def read_int_n():
      return list(map(int, readline().split()))
  
  
  def read_float():
      return float(readline())
  
  
  def read_float_n():
      return list(map(float, readline().split()))
  
  
  def read_str():
      return readline().strip()
  
  
  def read_str_n():
      return readline().strip().split()
  
  
  def ep(*args):
      print(*args, file=sys.stderr)
  
  
  def mt(f):
      import time
  
      def wrap(*args, **kwargs):
          s = time.perf_counter()
          ret = f(*args, **kwargs)
          e = time.perf_counter()
  
          ep(e - s, "sec")
          return ret
  
      return wrap
  
  
  class Bisect:
      def __init__(self, func):
          self.__func = func
  
      def bisect_left(self, x, lo, hi):
          while lo < hi:
              mid = (lo + hi) // 2
              if self.__func(mid) < x:
                  lo = mid + 1
              else:
                  hi = mid
          return lo
  
      def bisect_right(self, x, lo, hi):
          while lo < hi:
              mid = (lo + hi) // 2
              if x < self.__func(mid):
                  hi = mid
              else:
                  lo = mid + 1
          return lo
  
  
  @mt
  def slv(N, A, B, H):
      c = A - B
  
      def f(n):
          m = n
          for h in H:
              h -= n * B
              if h > 0:
                  m -= -(-h // c)
          return 1 if m >= 0 else 0
  
      return Bisect(f).bisect_left(1, 0, 10**9)
  
  
  def main():
      N, A, B = read_int_n()
      H = [read_int() for _ in range(N)]
      print(slv(N, A, B, H))
  
  
  if __name__ == "__main__":
      main()
  
problem_description: Statement
  
  You are going out for a walk, when you suddenly encounter N monsters. Each
  monster has a parameter called _health_ , and the health of the i-th monster
  is h_i at the moment of encounter. A monster will vanish immediately when its
  health drops to 0 or below.
  
  Fortunately, you are a skilled magician, capable of causing explosions that
  damage monsters. In one explosion, you can damage monsters as follows:
  
    * Select an alive monster, and cause an explosion centered at that monster. The health of the monster at the center of the explosion will decrease by A, and the health of each of the other monsters will decrease by B. Here, A and B are predetermined parameters, and A > B holds.
  
  At least how many explosions do you need to cause in order to vanish all the
  monsters?
samples: [{"input": "4 5 3\n    8\n    7\n    4\n    2", "output": "2\n    \n\nYou can vanish all the monsters in two explosion, as follows:\n\n  * First, cause an explosion centered at the monster with 8 health. The healths of the four monsters become 3, 4, 1 and -1, respectively, and the last monster vanishes.\n  * Second, cause an explosion centered at the monster with 4 health remaining. The healths of the three remaining monsters become 0, -1 and -2, respectively, and all the monsters are now vanished.\n\n* * *"}, {"input": "2 10 4\n    20\n    20", "output": "4\n    \n\nYou need to cause two explosions centered at each monster, for a total of\nfour.\n\n* * *"}, {"input": "5 2 1\n    900000000\n    900000000\n    1000000000\n    1000000000\n    1000000000", "output": "800000000"}]