import java.util.Scanner;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.IOException;
import java.math.BigInteger;
class Main
{
private final static boolean DEBUG = false;
public static void main(String[] args) throws IOException
{
Scanner cin;
BigInteger a;
if (DEBUG) {
cin = new Scanner(new BufferedReader(new FileReader("d:\\OJ\\uva_in.txt")));
} else {
cin = new Scanner(System.in);
}
while (cin.hasNext()) {
a = cin.nextBigInteger();
if (a.compareTo(BigInteger.ZERO) == 0) {
System.out.println("0");
continue;
}
StringBuffer tmp = new StringBuffer();
while (a.compareTo(BigInteger.ZERO) != 0) {
BigInteger re = a.remainder(BigInteger.valueOf(2));
tmp.append(re.toString());
a = a.divide(BigInteger.valueOf(2));
}
String s = tmp.toString();
BigInteger ans = BigInteger.ZERO;
for (int i = 0; i < s.length(); i++) {
ans = ans.multiply(BigInteger.valueOf(2)).add(BigInteger.valueOf(s.charAt(i) - '0'));
}
System.out.println(ans.toString());
}
}
}
题目1208:10进制 VS 2进制
最新推荐文章于 2021-12-11 21:46:02 发布