尤拉計畫36題

2021-09-02 13:47:19 字數 1024 閱讀 3088

/**

* double-base palindromes

* problem 36

* * the decimal number, 585 = 10010010012 (binary),

* is palindromic in both bases.

* * find the sum of all numbers, less than one million,

* which are palindromic in base 10 and base 2.

* * (please note that the palindromic number,

* in either base, may not include leading zeros.)

* 求1000000以內10進製數和它的2進製數都是回文數的和

分析第一反應,迴圈所有的數,依次做判斷,並求和

因為2進製回文,可得出最後一位一定是1,即該數是奇數

因此只需判斷所有奇數,減少一半計算量

本題的難點在於十進位制與二進位制的轉換

使用不斷除二,餘數倒置的方法求2二進位制

如 21

22 / 2 = 11 ...0

11 / 2 = 5 ...1

5 / 2 = 2 ...1

2 / 2 = 1 ...0

1 / 2 = 0 ...1

所以22的二進位制表示為10110

**實現:

string result = "";

while (!"1".equals(decimal)) else

int c = 0;

string temp = "";

for (int i = 0; i < decimal.length(); i++)

temp = temp + a / 2;

if (a % 2 == 1) else

}decimal = temp;

}return "1" + result;

結果:872187

尤拉計畫 36

十進位制數字585 1001001001 二進位制 可以看出在十進位制和二進位制下都是回文 從左向右讀和從右向左讀都一樣 求100萬以下所有在十進位制和二進位制下都是回文的數字之和。注意在兩種進製下的數字都不包括最前面的0 import math defis palindrome x x是否回文 x...

尤拉計畫第3題

problem 3 the prime factors of 13195 are 5,7,13 and 29.what is the largest prime factor of the number 600851475143.問題3 13195的質因數為5,7,13和 29。6008514751...

尤拉計畫 第二題

斐波那契數列中的每一項被定義為前兩項之和。從1和2開始,斐波那契數列的前十項為 1,2,3,5,8,13,21,34,55,89,考慮斐波那契數列中數值不超過4百萬的項,找出這些項中值為偶數的項之和。源 stdmethodimp coula test2 int imaxnumber printf d...