题解 | #10进制 VS 2进制#
10进制 VS 2进制
https://www.nowcoder.com/practice/fd972d5d5cf04dd4bb4e5f027d4fc11e
import java.util.Scanner;
import java.math.BigInteger;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
BigInteger a = in.nextBigInteger();
String s = "";
//转为二进制
while(a!=BigInteger.valueOf(0)){
s+=(a.mod(BigInteger.valueOf(2))).toString();
a = a.divide(BigInteger.valueOf(2));
}
BigInteger weight =BigInteger.valueOf(1);
a = BigInteger.valueOf(0);
for(int i =s.length()-1;i>=0;i--){
BigInteger temp = weight.multiply(BigInteger.valueOf(s.charAt(i)-'0'));
a = a.add(temp);
weight=weight.multiply(BigInteger.valueOf(2));
}
//二进制转十进制
System.out.println(a);
}
}
真是jaja又vava啊

