def f n
  ret = 0
  while n > 0
    ret += n % 10
    n /= 10
  end
  ret
end

def g n
  n.to_f / f(n)
end

K = gets.to_i
ret = []
data = 1
15.times { (2..200).to_a.each {|i| ret.push(data * i - 1)}; data *= 10 }
ret.uniq!
ret.sort!
ans = ret.select.with_index {|num,i| flg = true; ret[i..-1].each {|num2| flg = false if g(num) > g(num2) }; flg }
puts ans[0...K]