# 入力例2 31415 # どの配列も、その時点で残っている順位のfirst or lastになる # たとえば1415 は残りの3415、3115、3141に対してfirstになる # 次の3415は3115,3141に対してlastになる # つまりその時点で残るfirst, lastを管理して決定していく、それがKなら答え # 問題はたとえば34445、2番目の4を削除したときに次の文字も同じで順序が決まらない # 同様に34441,つまり続く同数字のあとに来るのが上がるのか下がるのかで順序決まる # これを先に探索するか、後ろから決めて配列にする N, K = map(int, input().split()) A = list(map(int, input().split())) updown = [0]*N for i in range(N-2, -1, -1): if A[i] < A[i+1]: updown[i] = +1 elif A[i] > A[i+1]: updown[i] = -1 elif A[i] == A[i+1]: updown[i] = updown[i+1] first = 1 last = N ans = A[:N-1] for i in range(N): if updown[i] > 0: current = last last -= 1 elif updown[i] < 0: current = first first += 1 elif updown[i] == 0: current = first if current == K: ans = A[:i] + A[i+1:] break print(*ans)