#include <bits/stdc++.h>
using namespace std;
const int INF = 1e9 + 1;
const int MOD = 1e9 + 7;
const int MAX_N = 1e5 + 1;
long long K;
int main() {
  scanf("%lld", &K);
  for (long long i = (long long)1; i < (long long)min(K, 10ll); ++i) {
    printf("%d\n", i);
  }
  if (K < 10) {
    return 0;
  } else {
    K -= 9ll;
  }
  vector<pair<double, long long> > d;
  long long sn = 1;
  long long lb = 10ll;
  long long ub;
  int cnt = 0;
  while (K > 0) {
    ub = lb * 10ll;
    for (long long i = (long long)lb; i < (long long)ub; ++i) {
      if (cnt == 10) {
        cnt = 0;
        sn -= 8ll;
      }
      d.emplace_back(make_pair((double)i / (double)sn, i));
      cnt++;
      sn++;
    }
    sort((d).begin(), (d).end());
    for (long long i = (long long)0; i < (long long)d.size(); ++i) {
      printf("%lld\n", d[i].second);
      K--;
      if (K <= 0) break;
    }
    lb *= 10ll;
    cnt = 0;
    sn = 1ll;
    d.clear();
  }
  return 0;
}
