import qualified Data.ByteString.Char8 as BS
import Data.Char
import Data.List

main = do
  li <- BS.getLine
  let [n,k] = unfoldr (BS.readInt . BS.dropWhile isSpace) li
  li <- BS.getLine
  let as = unfoldr (BS.readInt . BS.dropWhile isSpace) li
  let ans = compute n k as
  mapM_ (\b -> putStrLn $ if b then "Yes" else "No") ans

compute :: Int -> Int -> [Int] -> [Bool]
compute n k as = zipWith (<) as (drop k as)

{-
as と drop k as を用意して、
次に進むたびに、左だけ減って右だけ増えるので、L<Rなら真に増加する
-}