#include <bits/stdc++.h>
using namespace std;
char to_upper(char x) {
  if (97 <= int(x) && int(x) <= 126)
    return char(x - 32);
  else if (65 <= int(x) && int(x) <= 90)
    return x;
}
char to_lower(char x) {
  if (97 <= int(x) && int(x) <= 126)
    return x;
  else if (65 <= int(x) && int(x) <= 90)
    return char(x + 32);
}
int numerize(char x) {
  if (48 <= int(x) && int(x) <= 57)
    return int(x - '0');
  else if (97 <= int(x) && int(x) <= 126)
    return int(x - 96);
  else if (65 <= int(x) && int(x) <= 90)
    return int(x - 64);
}
long long n, k, nine, st;
int snuke(int x) {
  int res = 0;
  while (x > 0) {
    res += x % 10;
    x /= 10;
  }
  return res;
}
long long cons(long long x, long long n9) {
  long long m = 1;
  long long res = 0;
  for (int i = 1; i <= n9; i++) {
    res += 9 * m;
    m *= 10;
  }
  res += x * m;
  return res;
}
vector<long long> ans;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cin >> k;
  for (int i = 1; i < 10; i++) {
    ans.push_back(i);
  }
  st = 10;
  nine = 1;
  n = 0;
  while (ans.size() < k) {
    n++;
    if (n == st) {
      n = nine;
      nine++;
      st = nine * 10;
    }
    ans.push_back(cons(n, nine));
  }
  for (int i = 0; i < k; i++) {
    cout << ans[i] << '\n';
  }
}
