京东笔试
题目: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 }