N, K = gets.split.map(&:to_i) A = gets.split.map(&:to_i) res = A.tally.sort_by { |k, v| -v } remain = K ans = 0 while remain > 0 && res.size > 0 k, cnt = res.shift remain -= cnt ans += 1 end puts ans