尤拉計劃700:尤拉幣
萊昂哈德·尤拉(Leonhard Euler)於1707年4月15日出生。
考慮序列1504170715041707n mod 4503599627370517。
如果此序列的一個元素嚴格小於所有先前發現的尤拉幣,則將其定義為尤拉幣。
例如,第一項是1504170715041707,這是第一個尤拉幣。 第二項是3008341430083414,該值大於1504170715041707,因此不是尤拉幣。 但是,第三項是8912517754604,它足夠小,可以用作新的尤拉幣。
因此,前2個尤拉幣的總和為1513083232796311。
找到所有尤拉幣的總和。
用黃志斌老師(https://www.ituring.com.cn/space/98916)提示的演算法
#改進歐幾里得演算法求線性方程的x與y
def get_(a, b):
if b == 0:
return 1, 0
else:
k = a // b
remainder = a % b
x1, y1 = get_(b, remainder)
x, y = y1, x1 - k * y1
return x, y
ec=1504170715041707
last_ec=1504170715041707
m =4503599627370517
s=set()
s.add(1)
for n in range(1,2*10**8):
a=n*ec%m
if a<last_ec:print(n,a);last_ec=a;s.add(a)
x,y=get_(ec,m)
inv=x%m
last_inv=x%m
for i in range(2,2*10**8):
tmp=i*inv%m
if tmp<last_inv:
print (tmp,i);last_inv=tmp;s.add(i)
print(s)
print(sum(s))
相關文章
- 尤拉計劃622:洗牌
- 尤拉計劃698:123數
- 尤拉計劃696:麻將
- 尤拉計劃719:拆分數
- 尤拉計劃699:三腳數
- 尤拉計劃706:三象數
- 尤拉計劃718:不可達數
- 尤拉計劃686:2的冪
- 尤拉計劃715:六元組
- 尤拉計劃709:偶數袋
- 尤拉計劃708:你只要2
- 尤拉計劃712:指數差
- 尤拉計劃749:近似冪和
- 尤拉計劃739:和的和
- 尤拉計劃751:串聯重合
- 尤拉計劃745:平方和
- 尤拉計劃717:取模公式之和公式
- 尤拉計劃722:慢收斂系列
- 尤拉計劃695:隨機長方形隨機
- 尤拉計劃694:立方滿因數
- 尤拉計劃725:數位之和數
- 尤拉計劃710:1百萬會員
- 尤拉方程
- 尤拉定理
- 尤拉篩
- 尤拉計劃723:畢達哥拉斯四邊形
- 尤拉計劃697:隨機衰減序列隨機
- 尤拉計劃713:圖蘭熱水系統
- 尤拉計劃711:二進位制黑板
- 尤拉計劃748:倒丟蕃多方程
- 尤拉計劃747:三角披薩
- 尤拉函式φ函式
- 尤拉路徑
- 尤拉降冪
- 尤拉計劃657:不完整的單詞
- 尤拉計劃721:無理數高次冪
- 尤拉計劃701:隨機連線區域隨機
- 尤拉計劃714:兩種數位的數