import Control.Monad
main = do
    [n,a,b] <- map read . words <$> getLine
--    h <- map read <$> (sequence $ replicate n getLine)
    h <- map read . words <$> getContents
    print $ solve h a b

inf :: Integer
inf = 10^9+1

solve ::[Integer] -> Integer -> Integer -> Integer
solve h a b = binalySearch inf 0 (f h a b)
  where binalySearch ::Integral a => a -> a -> (a -> Bool) -> a
        binalySearch ok ng f
          | abs (ok-ng) <= 1 = ng + 1
          | f mid = binalySearch mid ng f
          | otherwise = binalySearch ok mid f
            where mid = (ok + ng) `div` 2
        f ::[Integer] -> Integer -> Integer -> Integer -> Bool
        f h a b c = s <= c
          where list = [max 0 (hi - b*c + a - b - 1) `div` (a-b) | hi <- h]
                s = sum list