#include <bits/stdc++.h>
double wari(int x) {
  int S = 0;
  int j, n = x, m;
  while (n > 9) {
    m = n / 10;
    j = n - m * 10;
    S += j;
    n = m;
  }
  S += n;
  return (double)x / S;
}
int main(void) {
  int K;
  scanf("%d", &K);
  int i, c = 0, j, flag, x, y = 0;
  for (i = 1; c < K; i++) {
    j = 1;
    flag = 0;
    int k = wari(i);
    if (x == 1 && y == 1) {
      if (wari(i - 1) <= wari(i)) {
        flag = 1;
      }
    } else {
      x = 0;
      while (j < i) {
        if (k > wari(j)) {
          flag = 1;
          x = 1;
          break;
        }
        j++;
      }
      y = 0;
    }
    if (flag == 0) {
      printf("%d\n", i);
      c++;
    }
  }
  return 0;
}
