output_description: Print K lines. The i-th line should contain the i-th smallest Snuke number.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      K
attempt: def calc(n):
      if n == 0:
          return -1
      s = 0
      n_ = n
      while n:
          s += n % 10
          n //= 10
      return n_ / s
  
  
  # res = []
  # for i in range(1,10**6):
  #     res.append((i/sunuke(i), i))
  #     # print(i, i/sunuke(i))
  # res.sort()
  # max_i = 0
  # ret = []
  # for v, i in res:
  #     if i > max_i:
  #         max_i = i
  #         print(i, v)
  #         ret.append(i)
  # print(ret)
  
  k = int(input())
  for i in range(1, min(9, k) + 1):
      print(i)
  cnt = min(9, k)
  i = min(9, k)
  d = 1
  
  while cnt < k:
      # print(i,d)
      while calc(i + d) > calc(i + d * 10):
          d *= 10
      i += d
      print(i)
      cnt += 1
  
  # vv = [30999,39999]
  # for v in vv:
  #     print(v, v/sunuke(v), 10)
  
problem_description: Statement
  
  Let S(n) denote the sum of the digits in the decimal notation of n. For
  example, S(123) = 1 + 2 + 3 = 6.
  
  We will call an integer n a **Snuke number** when, for all positive integers m
  such that m > n, \frac{n}{S(n)} \leq \frac{m}{S(m)} holds.
  
  Given an integer K, list the K smallest Snuke numbers.
samples: [{"input": "10", "output": "1\n    2\n    3\n    4\n    5\n    6\n    7\n    8\n    9\n    19"}]