我試圖解決項目歐拉#16:如何查找數字的單獨數字的總和?
2^15 = 32768和它的位數之和爲3 + 2 + 7 + 6 + 8 = 26。
什麼是數字2^1000的數字總和?
問題看起來很簡單,但如果不使用模數10的我試圖解決這樣的問題:
public class Main {
public static void main(String[] args) {
long number = (long) Math.pow(2,100);
long sum=0;
String number2 = String.valueOf(number);
char[] digits = number2.toCharArray();
for (char digit : digits) {
sum = sum + digit;
}
System.out.println(sum);
}
}
但是它給出了一個錯誤的答案,我看不到我的錯,是不是用這種方法解決這個問題有可能嗎?
2^100不適合很長時間,您需要查看BigInt類型 –
但是我無法將'Math.pow(2,100)'投射到BigInteger? –
是的,你不能,但pow完全是一個乘法 –