关注
import java.util.Scanner;
publicclass Main {
public
static
void main(String[] args) {
Scanner in =
new
Scanner(System.in);
while (in.hasNextInt()) {
int
n = in.nextInt();
String bin
= Integer.toBinaryString(n);
char[]
c = bin.toCharArray(); //10进制转为2进制
int
first1 = -1;
int
first0 = -1;
for(int
i=c.length-1,len=c.length;i>=0;i--){
if(c[i]=='1'&&first1==-1){
first1 = i; //找到从右往左的第一个1
}
if(c[i]=='0'&&first1!=-1){
first0 = i; //从第一个1开始出发,找到第一个0
break;
}
}
c[first1] = '0'; //1变0
c[first0] = '1'; //0变1
System.out.println(Integer.parseInt(String.valueOf(c),2)); //2进制转回10进制
}
}
}
查看原帖
点赞 12
相关推荐
牛客热帖
更多
正在热议
更多
# 你的秋招白月光和意难平公司 #
28213次浏览 228人参与
# 扒一扒那些奇葩实习经历 #
134868次浏览 1132人参与
# 你想跟着什么样领导? #
19751次浏览 168人参与
# 机械制造面试点评 #
77827次浏览 463人参与
# 十一月总结 #
34067次浏览 301人参与
# 你们公司哪个部门最累? #
34738次浏览 245人参与
# 实习吐槽大会 #
393636次浏览 2163人参与
# 腾讯工作体验 #
532347次浏览 3600人参与
# 机械/制造每日一题 #
77491次浏览 1391人参与
# 华勤技术工作体验 #
11476次浏览 22人参与
# 牛友们的论文几号送审 #
60421次浏览 829人参与
# 毕业季,你想好怎么跟生活对线了吗? #
259103次浏览 3845人参与
# 如何提高实习转正率? #
60100次浏览 422人参与
# 职场上哪些事情令人讨厌 #
29616次浏览 120人参与
# 机械人晒出你的简历 #
141562次浏览 865人参与
# 硬件人秋招进展 #
253408次浏览 3943人参与
# 入职以后才知道的校招谎言 #
107344次浏览 668人参与
# 听到哪句话代表面试稳了OR挂了? #
108064次浏览 481人参与
# 运营人的第一份offer应该如何选 #
198601次浏览 1225人参与
# 分享一个让你热爱工作的瞬间 #
50884次浏览 441人参与