Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
teguh54321
on 05/05/2025, 14:26:59 UTC
What’s up with this? Nobody dropped a Python script lately? Y’all running low on ideas or what?  Tongue

I have so many ideas—you wouldn’t even believe it. Half of ’em are junk. A few kinda work, but it really depends on the hardware. Python’s slow as hell. But hey, let me hook you up.


This will sound a bit twisted - but the puzzle can be solved with the following formula


Puzzle 65 as example:

(√(2^64)/8192×Y)^2+2^64 = 30568377312064202855

(√(2^64)/8192×6640.something)^2+2^64 = 30568377312064202855

Given equation: ((sqrt(2^64)/8192 * Y)^2 + 2^64) = 30568377312064202855

Simplify sqrt(2^64)
sqrt_2_64 = 2**32

Calculate divisor
divisor = 8192  # = 2**13

Simplify coefficient
coefficient = sqrt_2_64 / divisor  # = 2**19 = 524288

Isolate squared term
target = 30568377312064202855
squared_term = target - 2**64  # = 12121633238354651239

Take square root
sqrt_term = 3481613620  # Approximate sqrt(12121633238354651239)

Solve for Y
Y = sqrt_term / coefficient  # = 3481613620 / 524288 ≈ 6640.651

All puzzles

Code:
from decimal import Decimal, getcontext

# Set precision to 180 significant digits to ensure 100 decimal places after the decimal point
getcontext().prec = 180

# HISTORY list from the puzzle
HISTORY = [
    (20, 863317), (21, 1811764), (22, 3007503), (23, 5598802), (24, 14428676),
    (25, 33185509), (26, 54538862), (27, 111949941), (28, 227634408), (29, 400708894),
    (30, 1033162084), (31, 2102388551), (32, 3093472814), (33, 7137437912),
    (34, 14133072157), (35, 20112871792), (36, 42387769980), (37, 100251560595),
    (38, 146971536592), (39, 323724968937), (40, 1003651412950), (41, 1458252205147),
    (42, 2895374552463), (43, 7409811047825), (44, 15404761757071), (45, 19996463086597),
    (46, 51408670348612), (47, 119666659114170), (48, 191206974700443), (49, 409118905032525),
    (50, 611140496167764), (51, 2058769515153876), (52, 4216495639600700), (53, 6763683971478124),
    (54, 9974455244496707), (55, 30045390491869460), (56, 44218742292676575), (57, 138245758910846492),
    (58, 199976667976342049), (59, 525070384258266191), (60, 1135041350219496382),
    (61, 1425787542618654982), (62, 3908372542507822062), (63, 8993229949524469768),
    (64, 17799667357578236628), (65, 30568377312064202855), (66, 46346217550346335726),
    (67, 132656943602386256302), (68, 219898266213316039825), (69, 297274491920375905804),
    (70, 970436974005023690481), (75, 22538323240989823823367), (80, 1105520030589234487939456)
]

# Process each puzzle in the HISTORY list
for n, value in HISTORY:
    # Step 1: Compute denominator = 2^(n-1)
    denominator = Decimal(2) ** (n - 1)
   
    # Step 2: Compute ratio = value / denominator
    ratio = Decimal(value) / denominator
   
    # Step 3: Compute ratio_minus_1 = ratio - 1
    ratio_minus_1 = ratio - Decimal('1')
   
    # Step 4: Compute sqrt(ratio_minus_1)
    sqrt_ratio = ratio_minus_1.sqrt()
   
    # Step 5: Compute Y_n = 8192 * sqrt(ratio_minus_1)
    Y_n = sqrt_ratio * Decimal(8192)
   
    # Step 6: Format Y_n to 100 decimal places
    formatted_Y = f"{Y_n:.10f}"
   
    # Print the result
    print(f"Puzzle {n}: Y = {formatted_Y}")

Puzzle 20: Y = 6587.5421820281
Puzzle 21: Y = 6988.8505492677
Puzzle 22: Y = 5397.3356389982
Puzzle 23: Y = 4740.4607371014
Puzzle 24: Y = 6951.2980082859
Puzzle 25: Y = 8101.4302440989
Puzzle 26: Y = 6478.3377497627
Puzzle 27: Y = 6696.3480345633
Puzzle 28: Y = 6834.3500056699
Puzzle 29: Y = 5750.5094991661
Puzzle 30: Y = 7876.3187149835
Puzzle 31: Y = 8018.1307321283
Puzzle 32: Y = 5437.1096584031
Puzzle 33: Y = 6664.3531850435
Puzzle 34: Y = 6580.7113769381
Puzzle 35: Y = 3384.8251708914
Puzzle 36: Y = 3959.7663115628
Puzzle 37: Y = 5549.1486413282
Puzzle 38: Y = 2157.4479371615
Puzzle 39: Y = 3453.3392889180
Puzzle 40: Y = 7443.5997756377
Puzzle 41: Y = 4679.2934501967
Puzzle 42: Y = 4609.8758232654
Puzzle 43: Y = 6779.0766164533
Puzzle 44: Y = 7100.7141263824
Puzzle 45: Y = 3028.4631512721
Puzzle 46: Y = 5562.8583573675
Puzzle 47: Y = 6856.6869060302
Puzzle 48: Y = 4905.6830762674
Puzzle 49: Y = 5516.5826397727
Puzzle 50: Y = 2396.8229729939
Puzzle 51: Y = 7456.7661640385
Puzzle 52: Y = 7651.9604283929
Puzzle 53: Y = 5803.2646952590
Puzzle 54: Y = 2684.5146133952
Puzzle 55: Y = 6694.6947438148
Puzzle 56: Y = 3905.7600843559
Puzzle 57: Y = 7851.2758274385
Puzzle 58: Y = 5100.2478999923
Puzzle 59: Y = 7425.8744623402
Puzzle 60: Y = 8063.9531293703
Puzzle 61: Y = 3985.3348435724
Puzzle 62: Y = 6829.3299699825
Puzzle 63: Y = 7984.9768850442
Puzzle 64: Y = 7899.4152467321
Puzzle 65: Y = 6640.6509340932
Puzzle 66: Y = 4146.6148384569
Puzzle 67: Y = 7317.2346798337
Puzzle 68: Y = 5734.9184846022
Puzzle 69: Y = 695.3631018793
Puzzle 70: Y = 6573.9673548600
Puzzle 75: Y = 3600.4645916176
Puzzle 80: Y = 7458.4526018771


You can see here also that Y number for puzzle 69 is low  Grin


So puzzle 71 start with 0x6....   ? 😅