#include <bits/stdc++.h>
using namespace std;
long sum(long n) {
  int div = 0;
  string s;
  s = to_string(n);
  for (int i = 0; i < s.length(); i++) {
    div += s[i] - '0';
  }
  return div;
}
long sunuke(long n) {
  long num = n;
  long nnum;
  double min;
  double tmp;
  int keta = 0;
  long first = n;
  min = 1e16;
  if (n <= 9) {
    return 2;
  } else {
    while (n > 9) {
      for (int i = 0; i < (10 - (n % 10)); i++) {
        tmp = (double)((num + i * pow(10, keta)) /
                       (sum(num + i * pow(10, keta))));
        if (tmp < min) {
          min = tmp;
        }
        nnum = num + i * pow(10, keta);
      }
      num = nnum;
      n = n / 10;
      keta++;
    }
    if ((double)(first / sum(first)) <= min) {
      return 2;
    }
    return 1;
  }
}
int main() {
  long k;
  long i = 0;
  cin >> k;
  for (int n = 1; i < k; n++) {
    if (sunuke(n) == 2) {
      cout << n << endl;
      i++;
    }
  }
  return 0;
}
