#include <bits/stdc++.h>
using namespace std;
void QuickSort(int array[], int begin, int end) {
  int i = begin;
  int j = end;
  int pivot;
  int temp;
  pivot = array[(begin + end) / 2];
  while (1) {
    while (array[i] < pivot) {
      ++i;
    }
    while (array[j] > pivot) {
      --j;
    }
    if (i >= j) break;
    temp = array[i];
    array[i] = array[j];
    array[j] = temp;
    i++;
    j--;
  }
  if (begin < i - 1) {
    QuickSort(array, begin, i - 1);
  }
  if (j + 1 < end) {
    QuickSort(array, j + 1, end);
  }
}
int S(int num) {
  int dig, sum = 0;
  while (num) {
    dig = num % 10;
    sum += dig;
    num /= 10;
  }
  return sum;
}
int SunukeCheck(int n, int m) { return (n / S(n) <= m / S(m) ? 1 : 0); }
int main() {
  int n = 1, m = 2, sun, num, cnt = 0;
  cin >> num;
  while (cnt < num) {
    if (sun = SunukeCheck(n++, m++)) {
      cnt++;
      cout << sun << endl;
    }
  }
  return 0;
}
