【失踪人口又双叒叕回归】1~n的快速质因数分解
本帖最后由 KeyError 于 2023-10-15 14:40 编辑效果:
质数有: {2, 3, 5, 37, 7, 41, 11, 43, 13, 47, 17, 19, 23, 29, 31}
2 = 2
3 = 3
4 = 2×2
5 = 5
6 = 3×2
7 = 7
8 = 2×2×2
9 = 3×3
10 = 5×2
11 = 11
12 = 3×2×2
13 = 13
14 = 7×2
15 = 5×3
16 = 2×2×2×2
17 = 17
18 = 3×3×2
19 = 19
20 = 5×2×2
21 = 7×3
22 = 11×2
23 = 23
24 = 3×2×2×2
25 = 5×5
26 = 13×2
27 = 3×3×3
28 = 7×2×2
29 = 29
30 = 5×3×2
31 = 31
32 = 2×2×2×2×2
33 = 11×3
34 = 17×2
35 = 7×5
36 = 3×3×2×2
37 = 37
38 = 19×2
39 = 13×3
40 = 5×2×2×2
41 = 41
42 = 7×3×2
43 = 43
44 = 11×2×2
45 = 5×3×3
46 = 23×2
47 = 47
48 = 3×2×2×2×2
49 = 7×7
50 = 5×5×2
>>>
辕马:
n = 50 #一直分到这个数
dic = {2:"2"}
dic1 = dic.copy()
al =
zhi = {2}
while not(len(dic) >= (n - 1)):
dic1 = dic.copy()
for i in dic.keys():
for j in dic.keys():
if i*j not in dic and i*j <= n:
dic1 = dic + "×" + dic
if i*j in al:
al.remove(i * j)
new = min(al)
al.remove(new)
dic1 = str(new)
zhi.add(new)
dic = dic1.copy()
print("质数有:", zhi, "\n")
for i in sorted(dic):
print(i, '=', dic)
支持 智齿 {:10_256:} 猿马
页:
[1]