{-# LANGUAGE Strict #-}
import qualified Data.ByteString.Char8 as B
import           Data.List             (sort, unfoldr)


main :: IO ()
main = do
  [n, m] <- readIntsLn
  as <- readIntsLn
  putStrLn $ if solve n m as then "Yes" else "No"

solve :: Int -> Int -> [Int] -> Bool
solve _ m as = all (>= s `div` (4 * m) + 1) (take m as')
  where as' = reverse $ sort as
        s = sum as

readIntsLn :: IO [Int]
readIntsLn = unfoldr (B.readInt . B.dropWhile (== ' ')) <$> B.getLine
