#include <bits/stdc++.h>
using namespace std;
long long func(long long n) {
  long long ret = 0;
  while (n > 0) {
    ret += n % 10;
    n /= 10;
  }
  return ret;
}
double snk(long long n) { return n / (double)func(n); }
int main() {
  long long K;
  cin >> K;
  long long n = 0;
  for (int i = 1; i <= min(K, 9LL); i++) {
    cout << i << endl;
  }
  double sn = 1.0;
  n = 9;
  for (int i = 10; i <= K; i++) {
    int keta = 0;
    long long tmp = n;
    while (tmp > 0) {
      keta++;
      tmp /= 10;
    }
    if (n == pow(10, keta) - 1) {
      n++;
      keta++;
    }
    double msn = 1e53;
    long long mnn = -1;
    long long nn = n;
    for (int j = 0; j < keta; j++) {
      long long p = (nn / (long long)pow(10, j)) % 10;
      if (p == 9) continue;
      for (int x = p + 1; x <= 9; x++) {
        nn = nn + pow(10, j);
        if (snk(nn) < msn) {
          msn = snk(nn);
          mnn = nn;
        }
      }
    }
    sn = msn;
    n = mnn;
    cout << n << endl;
  }
  return 0;
}
