/* -*- coding: utf-8 -*- * * 3625.cc: No.3625 Find Superfibonacci Number - yukicoder */ #include #include using namespace std; /* constant */ const int MAX_N = 1000000; /* typedef */ /* global variables */ int ds[MAX_N]; /* subroutines */ void printds(int l, int ds[]) { for (int i = l - 1; i >= 0; i--) putchar('0' + ds[i]); putchar('\n'); } /* main */ int main() { int tn; scanf("%d", &tn); while (tn--) { int k; scanf("%d", &k); int l = 0; for (int r = k; r > 0;) { int d = min(9, r); ds[l++] = d; r -= d; } //printds(l, ds); if (l == 1) { ds[2] = k / 2 + 1, ds[1] = 0, ds[0] = k - ds[2]; l = 3; } else { if (ds[l - 1] == 9) ds[l++] = 0; if (l == 2) { int d = ds[l - 1] + 9; ds[l] = d / 2 + 1, ds[l - 1] = 0, ds[l - 2] = d - ds[l]; l++; } else if (ds[l - 1] < 8) { ds[l] = ds[l - 1] + 1, ds[l - 1] = 9, ds[l - 2] = 0, ds[l - 3] = 8; l++; } else { ds[l] = 9, ds[l - 1] = 0, ds[l - 2] = 8; l++; } } printds(l, ds); } return 0; }