关注
我可以说我用70分钟做完所有然后ac全部吗?第一次遇到这么顺利的题,第二题二进制1的是程序员面试金典的题,第一题和第三题竟然直接手写没调试即ac
链接:http://www.nowcoder.com/practice/33ad4d168a3247b9b63f41e4eaded652?tpId=8&tqId=11021&rp=2&ru=/ta/cracking-the-coding-interview&qru=/ta/cracking-the-coding-interview/question-ranking
class CloseNumber {
public:
vector<int> getCloseNumber(int x) {
// write code here
int i, j;
int small, big;
for(i = 0; i < 32 && (x & (1 << i)) != 0; ++i) ;
if(i > 0)
{
big = x + (1 << (i - 1));
for(j = i ; j < 32 && (x & (1 << j)) == 0; ++j) ;
//small = x - (j << (j - 1));
small = x & ~((1 << (j + 1)) - 1);
for(int k = 0; k <= i; ++k)
small |= (1 << (j - k - 1));
}
else
{
for( ; i < 32 && (x & (1 << i)) == 0; ++i) ;
for(j = i; j < 32 && (x & (1 << j)) != 0; ++j) ;
big = x + (1 << i);
for(int k = 0; k < j - i - 1; ++k)
big |= (1 << k);
small = x - (1 << (i - 1));
}
return vector<int>({small, big});
}
};
查看原帖
点赞 3
相关推荐

点赞 评论 收藏
分享
07-20 18:34
广东药科大学 Java 点赞 评论 收藏
分享
07-19 13:28
长沙学院 Java 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 刚入职就____,这样正常吗? #
32817次浏览 273人参与
# 哪些公司对双非友好 #
56526次浏览 422人参与
# 小红书校招直播来了 #
20020次浏览 164人参与
# 你是怎么和mt相处的? #
29056次浏览 170人参与
# 面试反问你会问什么 #
38287次浏览 539人参与
# 实习返校后,你的精神状态是__? #
20900次浏览 113人参与
# 你朋友圈最大的人脉是谁? #
13939次浏览 111人参与
# 上班苦还是上学苦呢? #
272160次浏览 1717人参与
# 最难的技术面是哪家公司? #
41424次浏览 688人参与
# 关于求职,我有X不投 #
20338次浏览 133人参与
# 实习必须要去大厂吗? #
125718次浏览 1470人参与
# 秋招遇到的奇葩面试题 #
31539次浏览 173人参与
# 这个工作能去吗 #
13417次浏览 104人参与
# 招银网络求职进展汇总 #
134868次浏览 878人参与
# 机械人,你被简历秒挂的企业有哪些? #
57257次浏览 320人参与
# 找工作前vs找工作后的心路变化 #
18577次浏览 151人参与
# 4399求职进展汇总 #
28660次浏览 153人参与
# kpi面有什么特征 #
72229次浏览 454人参与
# 上班到公司第一件事做什么? #
89031次浏览 656人参与
# 机械人,签完三方你在忙什么? #
58437次浏览 228人参与
# 你觉得机械有必要实习吗 #
60818次浏览 475人参与