N,M,V,P,*A = $<.read.split.map &:to_i
I,c = [[]]
A.sort!.each_with_index {|n,i| I<<i if c!=n; c=n}
x,y = [A[-P]-M,A[-P]].map {|n| I.bsearch_index {|i| A[i]>=n} }
c = I[x]
v = V-P-c+1
t = A[c]+M
T = -1 + I[y+1]=N-P+1
w = (x..y).inject(0) {|s,i| a,b=I[i,2]; s+(t-A[a])*(b-a)}
while M*v > w
  a,b = I[x,2]
  c += b-a
  w += (A[b]-A[a])*(T-a)
  x += 1
end
p N-c