#sWDPlydlt50x5D01. 启示录

启示录

好的,这是整理后的题面:


题目描述

古代人认为数字 666 是与魔鬼有关的数字。
不仅如此,如果一个数字的十进制表示中包含连续三个 6(例如 666, 1666, 6663, 16666, 6660666),他们也认为这是魔鬼的数。

古代典籍中经常用“第 X 小的魔鬼的数”来称呼这些数,这给研究人员带来了不便。
现在请你编写程序,对于给定的 XX,输出第 XX 小的魔鬼的数(从小到大排列)。


输入格式

第一行一个整数 TT,表示测试数据组数。
接下来 TT 行,每行一个整数 XX

输出格式

对于每组测试数据,输出一行,表示第 XX 小的魔鬼的数。


数据范围

  • 1T10001 \le T \le 1000
  • 1X5×1071 \le X \le 5\times 10^7

注意:魔鬼的数可能有前导零吗?
不,数字是正常的正整数表示,没有前导零。


输入样例

3
2
3
187

输出样例

1666
2666
66666

样例解释

魔鬼的数从小到大排列:

  1. 666
  2. 1666
  3. 2666
  4. 3666
  5. 4666
  6. 5666
  7. 6660
  8. 6661
  9. 6662
  10. 6663 … 依次类推。

X=2X=2 时,第 2 小的魔鬼数是 1666
X=3X=3 时,第 3 小的魔鬼数是 2666
X=187X=187 时,经过列举或计算可得第 187 小的魔鬼数是 66666(具体过程需程序实现)。


这样题目就完整清晰了。