-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest.py
117 lines (112 loc) · 1.42 KB
/
test.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
from math import sqrt
def prime_factorisation(num):
factors = {}
while num % 2 == 0:
num //= 2
if 2 not in factors:
factors[2] = 1
else:
factors[2] += 1
for factor in range(3, int(sqrt(num))+1, 2):
while num % factor == 0:
if factor not in factors:
factors[factor] = 1
else:
factors[factor] += 1
num //= factor
if num > 2:
factors[num] = 1
return factors
# lst = [10,
# 20,
# 30,
# 60,
# 120,
# 180,
# 210,
# 360,
# 420,
# 840,
# 1260,
# 1680,
# 2520,
# 4620,
# 7560,
# 9240,
# 13860,
# 18480,
# 27720,
# 55440,
# 83160,
# 110880,
# 120120,
# 180180]
# lst = [10,
# 20,
# 30,
# 60,
# 90,
# 120,
# 150,
# 180,
# 210,
# 420,
# 630,
# 840,
# 1050,
# 1260,
# 1470,
# 1680,
# 1890,
# 2100,
# 2310,
# 4620,
# 6930,
# 9240,
# 11550,
# 13860,
# 16170,
# 18480,
# 20790,
# 23100,
# 25410,
# 27720,
# 30030,
# 60060,
# 90090,
# 120120,
# 150150,
# 180180,
# 210210,
# 240240,
# 270270,
# 300300,
# 330330,
# 360360,
# 390390,
# 420420,
# 450450,
# 480480,
# 510510,
# 1021020,
# 1531530,
# 2042040,
# 2552550,
# 3063060,
# 3573570,
# 4084080,
# 4594590,
# 5105100,
# 5615610,
# 6126120,
# 6636630,
# 7147140,
# 7657650,
# 8168160,
# 8678670,
# 9189180,
# 9699690]
# for num in lst:
# print(num, dpf(num))
# print(7302006324653040, dpf(7302006324653040))
# print(10953009486979560, dpf(10953009486979560))