#include <bits/stdc++.h>
using namespace std;
int len;
int sum;
char s[333];
int a[333];
int n;
void input() {
  int i;
  for (i = 1; i <= n; i++) scanf("%d", &a[i]);
}
void tinh(int x) {
  int goc;
  int i, j;
  bool sida;
  goc = x;
  if (9 * len < x) {
    while (9 * len < x) len++;
    for (i = 0; i < len; i++) s[i] = '0';
    s[i] = 0;
    s[0] = '1';
    sum = 1;
  }
  if (sum < x) {
    for (i = len - 1; i >= 0; i--) {
      while (sum < x) {
        if (s[i] < '9') {
          s[i]++;
          sum++;
        } else
          break;
      }
    }
    if (sum < x) {
      len++;
      for (i = 0; i < len; i++) s[i] = '0';
      s[i] = 0;
      s[0] = '1';
      sum = 1;
      tinh(goc);
    }
  } else {
    sida = 0;
    while (true) {
      if (sida == 1 && sum == x) break;
      if (sum < x) break;
      sida = 0;
      for (i = len - 2; i >= 0; i--) {
        if (sum <= x && sida == 1) break;
        if (s[i] < '9') {
          s[i]++;
          sum++;
          sida = 1;
          sum -= s[i + 1] - '0';
          s[i + 1] = '0';
          j = len - 1;
          while (s[j] != '0') {
            sum -= s[j] - '0';
            s[j] = '0';
            j--;
          }
        }
      }
      if (sida == 0) break;
    }
    if (sida == 0) {
      len++;
      for (i = 0; i < len; i++) s[i] = '0';
      s[0] = '1';
      s[i] = 0;
      sum = 1;
    }
    if (sum < x) tinh(goc);
  }
}
void fix() {
  int i;
  s[0]++;
  for (i = 1; i < len; i++)
    if (s[i] > '0') {
      s[i]--;
      break;
    }
}
void solve() {
  int i;
  len = 1;
  s[0] = '0';
  s[1] = 0;
  sum = 0;
  for (i = 1; i <= n; i++) {
    tinh(a[i]);
    cout << s << endl;
  }
}
int main() {
  while (scanf("%d", &n) > 0) {
    input();
    solve();
  }
  return 0;
}
