import Data.Int (Int64)

computeMin :: Integral a => a -> a -> [a] -> a
computeMin a b = sum . fmap f . diff
    where f d = min b $ d * a

diff :: Num a => [a] -> [a]
diff xs = zipWith (-) (tail xs) (init xs)

main :: IO ()
main = do
    [_, a, b] <- fmap read . words <$> getLine :: IO [Int64]
    xs <- fmap read . words <$> getLine :: IO [Int64]
    print $ computeMin a b xs
