尤拉計畫 38

2021-07-25 13:17:27 字數 803 閱讀 5960

將192與1,2,3分別相乘得到:

192 × 1 = 192

192 × 2 = 384

192 × 3 = 576

將這三個乘積連線起來我們得到乙個1到9的pandigital數, 192384576。我們稱 192384576是192和 (1,2,3)的連線積。

通過將9與1,2,3,4和5相乘也可以得到pandigital數:918273645,這個數是9和(1,2,3,4,5)的連線積。

用乙個整數與1,2, … , n(n大於1)的連線積構造而成的1到9pandigital數中最大的是多少?

i_max = 0

for i in range(1, 10000):

# 標誌位判斷1到9是否出現過

flag_list = [0] * 9

for j in range(1, 10):

p = i * j

while p > 0:

j_p = p % 10

if j_p == 0:

break

flag_list[j_p - 1] += 1

if flag_list[j_p - 1] > 1:

break

p //= 10

if j_p == 0

or flag_list[j_p - 1] > 1:

break

if sum(flag_list) == 9:

i_max = i

break

print(i_max)

尤拉計畫第38題

全數字的倍數 將192分別與1 2 3相乘 192 1 192 192 2 384 192 3 576 連線這些乘積,我們得到乙個1至9全數字的數192384576。我們稱192384576為192和 1,2,3 的連線乘積。同樣地,將9分別與1 2 3 4 5相乘,得到1至9全數字的數918273...

尤拉計畫 6

前十個自然數的平方和是 1 2 2 2 10 2 385 前十個自然數的和的平方是 1 2 10 2 552 3025 所以平方和與和的平方的差是3025 385 2640.找出前一百個自然數的平方和與和平方的差。def get square sub x 遞迴,展開行列式 if x 1 return...

尤拉計畫 14

以下迭代序列定義在整數集合上 n n 2 當n是偶數時 n 3n 1 當n是奇數時 應用以上規則,並且以數字13開始,我們得到以下序列 13 40 20 10 5 16 8 4 2 1 可以看出這個以13開始以1結束的序列包含10個項。雖然還沒有被證明 collatz問題 但是人們認為在這個規則下,...