Author

Topic: Puzzle's divisors (Read 89 times)

newbie
Activity: 41
Merit: 0
February 13, 2024, 10:39:12 PM
#2
Here a simple one.
Code:
#!/usr/bin/env python3

def get_divisors(n):
divisors = []
for i in range(1, n+1):
if n % i == 0:
divisors.append(i)
return divisors

i=[]
max_puzzle = 160
for j in range(max_puzzle):
    i.append(2**(j+1)-1)


for k in i:
print(str(k)+'='+str(get_divisors(k)))
full member
Activity: 297
Merit: 133
February 06, 2024, 03:08:13 AM
#1
I have written Python script to find all divisors of puzzle's integer private keys:

Code:
#!/usr/bin/env python3

def get_divisors(n):
divisors = []
for i in range(1, n+1):
if n % i == 0:
divisors.append(i)
return divisors

i=[
1,
3,
7,
8,
21,
49,
76,
224,
467,
514,
1155,
2683,
5216,
10544,
26867,
51510,
95823,
198669,
357535,
863317,
1811764,
3007503,
5598802,
14428676,
33185509,
54538862,
111949941,
227634408,
400708894,
1033162084,
2102388551,
3093472814,
7137437912,
14133072157,
20112871792,
42387769980,
100251560595,
146971536592,
323724968937,
1003651412950,
1458252205147,
2895374552463,
7409811047825,
15404761757071,
19996463086597,
51408670348612,
119666659114170,
191206974700443,
409118905032525,
611140496167764,
2058769515153876,
4216495639600700,
6763683971478124,
9974455244496707,
30045390491869460,
44218742292676575,
138245758910846492,
199976667976342049,
525070384258266191,
1135041350219496382,
1425787542618654982,
3908372542507822062,
8993229949524469768,
30568377312064202855
]

for j in i:
print(str(j)+'='+str(get_divisors(j)))

I get:

Code:
1=[1]
3=[1, 3]
7=[1, 7]
8=[1, 2, 4, 8]
21=[1, 3, 7, 21]
49=[1, 7, 49]
76=[1, 2, 4, 19, 38, 76]
224=[1, 2, 4, 7, 8, 14, 16, 28, 32, 56, 112, 224]
467=[1, 467]
514=[1, 2, 257, 514]
1155=[1, 3, 5, 7, 11, 15, 21, 33, 35, 55, 77, 105, 165, 231, 385, 1155]
2683=[1, 2683]
5216=[1, 2, 4, 8, 16, 32, 163, 326, 652, 1304, 2608, 5216]
10544=[1, 2, 4, 8, 16, 659, 1318, 2636, 5272, 10544]
26867=[1, 67, 401, 26867]
51510=[1, 2, 3, 5, 6, 10, 15, 17, 30, 34, 51, 85, 101, 102, 170, 202, 255, 303, 505, 510, 606, 1010, 1515, 1717, 3030, 3434, 5151, 8585, 10302, 17170, 25755, 51510]
95823=[1, 3, 7, 9, 13, 21, 27, 39, 63, 81, 91, 117, 169, 189, 273, 351, 507, 567, 819, 1053, 1183, 1521, 2457, 3549, 4563, 7371, 10647, 13689, 31941, 95823]
198669=[1, 3, 47, 141, 1409, 4227, 66223, 198669]
357535=[1, 5, 23, 115, 3109, 15545, 71507, 357535]
863317=[1, 7, 13, 53, 91, 179, 371, 689, 1253, 2327, 4823, 9487, 16289, 66409, 123331, 863317]
1811764=[1, 2, 4, 19, 31, 38, 62, 76, 124, 589, 769, 1178, 1538, 2356, 3076, 14611, 23839, 29222, 47678, 58444, 95356, 452941, 905882, 1811764]
3007503=[1, 3, 9, 23, 27, 29, 69, 87, 167, 207, 261, 501, 621, 667, 783, 1503, 2001, 3841, 4509, 4843, 6003, 11523, 14529, 18009, 34569, 43587, 103707, 111389, 130761, 334167, 1002501, 3007503]
5598802=[1, 2, 11, 22, 254491, 508982, 2799401, 5598802]
14428676=[1, 2, 4, 19, 38, 76, 189851, 379702, 759404, 3607169, 7214338, 14428676]
33185509=[1, 7, 4740787, 33185509]
54538862=[1, 2, 7, 14, 49, 98, 556519, 1113038, 3895633, 7791266, 27269431, 54538862]
111949941=[1, 3, 43, 129, 867829, 2603487, 37316647, 111949941]
227634408=[1, 2, 3, 4, 6, 8, 9, 12, 18, 24, 27, 36, 54, 72, 108, 216, 1053863, 2107726, 3161589, 4215452, 6323178, 8430904, 9484767, 12646356, 18969534, 25292712, 28454301, 37939068, 56908602, 75878136, 113817204, 227634408]
400708894=[1, 2, 83, 166, 2413909, 4827818, 200354447, 400708894]
1033162084=[1, 2, 4, 47, 94, 188, 5495543, 10991086, 21982172, 258290521, 516581042, 1033162084]
2102388551=[1, 19, 43, 167, 361, 811, 817, 3173, 7181, 15409, 15523, 34873, 60287, 135437, 136439, 292771, 662587, 2573303, 2592341, 5823791, 12589153, 48892757, 110652029, 2102388551]
...

Maybe some look into divisors could give us something?
Jump to: