村上挪威 level
获赞
185
粉丝
12
关注
4
看过 TA
3
上海大学
2017
Java
IP属地:未知
暂未填写个人简介
私信
关注
2018-11-01 12:41
上海大学 Java
0 点赞 评论 收藏
分享
2016-11-19 15:32
已编辑
上海大学 Java
rt,收到的人多不多
投递中国农业银行等公司10个岗位 >
0 点赞 评论 收藏
分享
2016-09-06 18:28
已编辑
上海大学 Java
/* * @funcion 京东笔试 找幸运数 4,7,44,47,74,77,444,447 * 第5个幸运数是74 根据此规律找出第k个幸运数。 * * 思路:1位数有2个幸运数,2位数有4个幸运数,3位数有8个幸运数......故n位数的时候,有2的n次方个幸运数 * 根据k,找出它为几位数,进而得出它是在j位中的第几个数。比如第5个幸运数是74,属于两位数,在两位数中的第3位 * 我们通过2进制(即0,1)来解决问题 * 2位数的2进制,有00,01,10,11,第3个即10,把1作7,0作4,输出便是74. */ package String; im...
crazymind1:我实现的C++版本代码 #include<iostream> #include<cmath> #include<string> using namespace std; string getnext(int size, int k) { string res(size,'0'); for (int i = size - 1; i >= 0; i--) { if (k % 2 == 0)k = k / 2; else { k = k / 2; res[i] = '1'; } } for (int i = 0; i < size; ++i) { if (res[i] == '0')res[i] = '4'; else res[i] = '7'; } return res; } int main() { int k; while (cin >> k) { int size = 1; int i = 1; while (1) { if (k > pow(2, i)) { k = k - pow(2, i); i++; size++; } else { break; } } cout << getnext(size,k-1) << endl; } cin.get(); return 0; }
投递京东等公司10个岗位 >
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务