首页 > 代码库 > 京东笔试

京东笔试

题目:4和7是两个幸运数字,我们定义,十进制表示中,每一位只有4和7两个数的正整数都是幸运数字。前几个幸运数字是:4,7,44,47,74,77......

输入:数字k

输出:第k个幸运数

样例输入:

3

5

100

10000000

样例输出:

74

744747

44774447447477474444447

 1 #include <iostream> 2 #include <stack> 3 using namespace std; 4  5 int main(){ 6     int n,sum=0; 7     cin>>n; 8     stack<int>st; 9     int luckly[2]={7,3};10     while(n!=0){11         st.push(luckly[n%2]);12         n=(n-1)/2;13     }14     while(!st.empty()){15         int num=st.top();16         st.pop();17         sum=sum*10+num;18     }19     cout<<sum<<endl;20 }

京东笔试