n, m, v, p = gets.split.map(&:to_i)
a = gets.split.map(&:to_i).sort!

r = m * v
s = a.inject(:+).succ.fdiv(n).ceil
a.map!.with_index do |x, i|
  y = [r, m, s - x].min
  r -= y
  x + m
end

x = a[-p]
puts a.count { |y| y < x }
