#include <bits/stdc++.h>
using namespace std;
using ll = long long;
ll countdigits(ll n) {
  ll ans = 0;
  while (n) {
    n /= 10;
    ans++;
  }
  return ans;
}
ll sumdigits(ll n) {
  ll ans = 0;
  while (n) {
    ans += n % 10;
    n /= 10;
  }
  return ans;
}
ll f(ll n, vector<ll>& pow) {
  ll i = 0, j, digit = countdigits(n + 1), tr = pow[digit - 2] - 1, ans = 0;
  double p, min = (double)n / (double)sumdigits(n) * 100.0;
  if (digit != countdigits(n + 1))
    ;
  for (i = 0; i < 100; i++) {
    tr += pow[digit - 2];
    if (tr <= n) continue;
    p = (double)tr / (double)sumdigits(tr);
    if (min > p) {
      min = p;
      ans = tr;
    }
  }
  return ans;
}
int main() {
  ll i, n = 199, K;
  vector<ll> pow(30, 1);
  for (i = 1; i < 30; i++) pow[i] = pow[i - 1] * 10;
  printf("1\n2\n3\n4\n5\n6\n7\n8\n9\n19\n");
  cin >> K;
  if (K == 10) return 0;
  printf("29\n39\n49\n59\n69\n79\n89\n99\n199\n");
  K -= 19;
  for (i = 0; i < K; i++) {
    n = f(n, pow);
    printf("%lld\n", n);
  }
  return 0;
}
