题目描述
4和7是两个幸运数字,我们定义,十进制表示中,每一位只有4和7两个数的正整数都是幸运数字。
前几个幸运数字为:4,7,44,47,74,77,444,447...
现在输入一个数字K,输出第K个幸运数。
输入
第一行一个数字T(T<=1000)表示测试数据的组数。对于每组测试数据,输出一个数K
输出
每组数据输出一行,第K个幸运数。
样例输入
3
5
100
1000000000
样例输出
74
744747
77477744774747744747444444447
思路
首先把4和7化为0和1,分别对应起来看,题目就成了求第n位的二进制数,但是这个和普通的二进制数有点不一样。
各种进位的方法都能用的进制转换的方法来套用。
所以首先打个草稿找规律
/*0 - - 2的1次-2
//1 4 0
//2 7 1 2的2次-2
//3 44 00
//4 47 01 2的2次-2+2的一次
//5 74 10
//6 77 11 2的3次-2
//7 444 000
//8 447