#include <bits/stdc++.h>
int main() {
  auto dsum = [](intmax_t n) {
    int d = 0;
    while (n) {
      d += n % 10;
      n /= 10;
    }
    return d;
  };
  intmax_t K;
  scanf("%jd", &K);
  std::vector<intmax_t> res;
  for (int i = 1; i <= 9; ++i) res.push_back(i);
  int d = 0;
  for (intmax_t i = 10; i <= 1e15; i *= 10) {
    ++d;
    for (int j = 1; j <= 9; ++j) {
      if (d >= 3 && j <= d - 2) {
        for (int k = 1; k <= 9; ++k) res.push_back(i * j + i / 10 * k - 1);
      }
      res.push_back(j * i + i - 1);
    }
  }
  for (intmax_t i = 0; i < K; ++i) printf("%jd\n", res[i]);
}
