← All Duels

gpt-5.2-pro-2025-12-11_vs_claude-opus-4-5-20251101_20260125_001153.jsonl — 10 puzzles

gpt-5.2-pro-2025-12-11
0
vs
claude-opus-4-5-20251101
-4
#1 Solved
def mystery(x):
    import math, struct

    # Only accept a *built-in* float (not int/bool, not Decimal, not numpy, etc.)
    if type(x) is not float:
        return False

    # Must be NaN, but not just any NaN.
    if not math.isnan(x):
        return False

    raw = struct.pack(">d", x)  # exact IEEE-754 bytes as stored

    def _u16_chunks_to_bytes(u16_list, order):
        b = b"".join(int(u16_list[i] & 0xFFFF).to_bytes(2, "big") for i in order)
        blocks = [b[i:i+2] for i in range(0, len(b), 2)]
        # de-scramble blocks in a different order
        return b"".join(blocks[i] for i in (2, 0, 3, 1))

    # These are not the target bytes directly; they must be re-ordered and combined.
    a = [0x6CCF, 0xC0DE, 0x4200, 0x99FF]
    k = [0x1337, 0xC0DE, 0x4200, 0x995A]

    u = _u16_chunks_to_bytes(a, (1, 3, 0, 2))
    v = _u16_chunks_to_bytes(k, (1, 3, 0, 2))

    target = bytes((uu ^ vv) for uu, vv in zip(u, v))

    return raw == target
__import__('struct').unpack(">d", b'\x7f\xf8\x00\x00\x00\x00\x00\xa5')[0]
__import__('struct').unpack('>d', bytes.fromhex('7ff80000000000a5'))[0]
Proposer: gpt-5.2-pro-2025-12-11 Solver: claude-opus-4-5-20251101
0 vs 0
#2 Sample Solution Wrong
def mystery(x):
    if type(x) is not int:
        return False
    
    if x < 10000 or x > 99999:
        return False
    
    s = str(x)
    d = [int(c) for c in s]
    
    # Condition 1: Sum of digits equals 3^3
    if sum(d) != 27:
        return False
    
    # Condition 2: Product of digits equals 6^4
    p = 1
    for digit in d:
        p *= digit
    if p != 1296:
        return False
    
    # Condition 3: Middle digit is supreme
    if d[2] != max(d):
        return False
    
    # Condition 4: Ascending ends
    if d[0] >= d[4]:
        return False
    
    # Condition 5: Divisible by the digit sum
    if x % sum(d) != 0:
        return False
    
    # Condition 6: Inner digits sum to 9
    if d[1] + d[3] != 9:
        return False
    
    # Condition 7: Inner digits ascending
    if d[1] >= d[3]:
        return False
    
    # Condition 8: First digit exceeds 2
    if d[0] <= 2:
        return False
    
    return True
31986
Proposer: claude-opus-4-5-20251101 Solver: gpt-5.2-pro-2025-12-11
0 vs -1
#3 Solved
def mystery(x):
    # x may be a string or a number; only one very specific string will work.

    if type(x) is not str:
        return False

    b = x.encode("utf-8", "strict")

    n = 23
    if len(b) != n:
        return False

    # Keep the search space "reasonable" but not tiny.
    # (Printable ASCII excluding space.)
    if any(not (33 <= c <= 126) for c in b):
        return False

    # Obfuscated constants
    add_step = (2**5) - 25                  # 7
    xorkey = (1 << 8) - (9 * 10 + 1)        # 165 == 0xA5

    # Encrypt the candidate
    enc = bytes((((c + add_step * i) & 0xFF) ^ xorkey) for i, c in enumerate(b))

    # Reconstruct the target ciphertext from an obfuscated integer.
    # (The stored bytes are bitwise-not of the reversed target bytes.)
    stored = 0x589E809EACF49EBE9FD1F4E03D28D9C838DAD460180D2F
    blob = stored.to_bytes(n, "big")
    target = bytes((t ^ 0xFF) for t in blob[::-1])

    # Compare in a scrambled order (full cycle mod 23).
    j = 0
    for _ in range(n):
        j = (j + 7) % n
        if enc[j] != target[j]:
            return False

    return True
"uP4%r]8aK3!mZ0c{T7x?N1h"
'uP4%r]8aK3!mZ0c{T7x?N1h'
Proposer: gpt-5.2-pro-2025-12-11 Solver: claude-opus-4-5-20251101
0 vs -1
#4 Sample Solution Wrong
def mystery(x):
    if type(x) is not int:
        return False
    
    if not (10**11 <= x < 10**12):
        return False
    
    s = str(x)
    
    # Obfuscated digit sum target
    target_sum = (0x19 << 1) ^ 0x14  # 50
    if sum(int(c) for c in s) != target_sum:
        return False
    
    # First and last digit relationship
    if int(s[0]) + int(s[-1]) != (0xD ^ 0x0):  # 13
        return False
    
    # Specific position constraint
    pivot = (0x1F & 0x07)  # 7
    if int(s[5]) != pivot:
        return False
    
    # Polynomial check on digit subsequence
    coef = [2, 3, 5, 7, 11, 13]
    subseq = [int(s[i]) for i in [1, 3, 6, 8, 9, 10]]
    poly_val = sum(c * d for c, d in zip(coef, subseq))
    if poly_val != 127:
        return False
    
    # Adjacent digit constraint
    for i in range(5):
        if abs(int(s[i]) - int(s[i+6])) > 4:
            return False
    
    return True
633327733337
Proposer: claude-opus-4-5-20251101 Solver: gpt-5.2-pro-2025-12-11
0 vs -2
#5 Solved
def mystery(x):
    # x must be a very specific 16-character printable-ASCII string.
    if type(x) is not str:
        return False

    b = x.encode("utf-8", "strict")

    n = (1 << 6) >> 2  # 16
    if len(b) != n:
        return False

    # Printable ASCII (no space)
    if any((c < 33) or (c > 126) for c in b):
        return False

    # A full-cycle permutation mod 16 (since gcd(5,16)=1), written to look "bit-ish".
    perm = [((i * 5) + 1) & (n - 1) for i in range(n)]

    # Obfuscated 16-byte key and target (stored as: bitwise-not of reversed bytes).
    stored_key = 0x64B61D88FE572BC3914EF06FA23CE8D5
    stored_target = 0x312CDE637AEB47B8C9B514B474177DE5

    key = bytes((t ^ 0xFF) for t in stored_key.to_bytes(n, "big"))[::-1]
    target = bytes((t ^ 0xFF) for t in stored_target.to_bytes(n, "big"))[::-1]

    # Position-dependent transform of permuted bytes
    enc = bytearray(n)
    for i in range(n):
        add = (i * 31) & 0xFF
        enc[i] = ((b[perm[i]] ^ key[i]) + add) & 0xFF

    # Compare in a scrambled visitation order (stride 7 mod 16 is a full cycle).
    j = 0
    for _ in range(n):
        j = (j + 7) & (n - 1)
        if enc[j] != target[j]:
            return False

    return True
"s0lv3_th1s_if_u!"
"s0lv3_th1s_if_u!"
Proposer: gpt-5.2-pro-2025-12-11 Solver: claude-opus-4-5-20251101
0 vs -2
#6 Solved
def mystery(x):
    if type(x) is not int:
        return False
    
    # Range check (obfuscated bounds)
    bound_lo = (5 ** 8) * (2 ** 8)
    bound_hi = bound_lo * 10
    
    if not (bound_lo <= x < bound_hi):
        return False
    
    s = str(x)
    
    # Obfuscated weights derived through XOR
    key = [0x30, 0x32, 0x37, 0x32, 0x36, 0x3A, 0x31, 0x35, 0x36]
    weights = [k ^ 0x33 for k in key]
    
    wsum = sum(int(d) * w for d, w in zip(s, weights))
    
    # Target value (obfuscated)
    target = (0xA << 4) + 0x28
    
    if wsum != target:
        return False
    
    # Position parity balance constraint
    even_idx = [i for i in range(9) if (i & 1) == 0]
    odd_idx = [i for i in range(9) if (i & 1) == 1]
    even_sum = sum(int(s[i]) for i in even_idx)
    odd_sum = sum(int(s[i]) for i in odd_idx)
    
    if even_sum != odd_sum:
        return False
    
    return True
100089484
424248484
Proposer: claude-opus-4-5-20251101 Solver: gpt-5.2-pro-2025-12-11
0 vs -2
#7 Solved
def mystery(x):
    import hashlib

    if type(x) is not str:
        return False

    b = x.encode("utf-8", "strict")
    n = 31
    if len(b) != n:
        return False

    # printable ASCII excluding space
    if any(c < 33 or c > 126 for c in b):
        return False

    # Stored bytes are: bitwise-not of reversed ciphertext bytes.
    stored = 0x05316371006B006A192511331426194333606F500D6343412C660566760B51
    blob = stored.to_bytes(n, "big")
    ct = bytes((bb ^ 0xFF) for bb in blob)[::-1]

    # Decrypt ciphertext -> secret bytes using a repeating XOR mask.
    mask = (0xDE, 0xAD, 0xBE, 0xEF)
    secret = bytes((c ^ mask[i & 3]) for i, c in enumerate(ct))

    def _mix(data: bytes) -> bytes:
        # Full-cycle permutation mod 31 (since gcd(17,31)=1).
        perm = [((i * 17) + 4) % n for i in range(n)]
        out = bytearray(n)

        # Byte-wise bijection (permute + add + xor + multiply by odd number).
        for i in range(n):
            v = data[perm[i]]
            v = (v + ((i * i + 13 * i + 37) & 0xFF)) & 0xFF
            v ^= (0xDEADBEEF >> ((i & 3) * 8)) & 0xFF
            v = (v * 197) & 0xFF
            out[i] = v

        # Extra diffusion (bijective on bytes as a whole, but not needed for uniqueness).
        h = hashlib.blake2s(out, digest_size=8, key=b"\xC3\x5A\x17\xE9").digest()
        for i in range(n):
            out[i] ^= h[i & 7] ^ ((i * 29 + 7) & 0xFF)

        return bytes(out)

    # Compare in a scrambled visitation order (stride 9 mod 31 is a full cycle).
    a = _mix(b)
    e = _mix(secret)

    j = 0
    for _ in range(n):
        j = (j + 9) % n
        if a[j] != e[j]:
            return False

    return True
"pY7v$4mQb1L@N2rS8tU#0wXz!9AaBcD"
"pY7v$4mQb1L@N2rS8tU#0wXz!9AaBcD"
Proposer: gpt-5.2-pro-2025-12-11 Solver: claude-opus-4-5-20251101
0 vs -2
#8 Sample Solution Wrong
def mystery(x):
    if type(x) is not str:
        return False
    
    b = x.encode("utf-8", "strict")
    n = 17
    if len(b) != n:
        return False
    
    if any(c < 33 or c > 126 for c in b):
        return False
    
    # Permutation (gcd(5, 17) = 1, so full cycle)
    step = (1 << 2) + 1
    offset = 7 - 4
    perm = [(i * step + offset) % n for i in range(n)]
    
    permuted = bytes([b[perm[i]] for i in range(n)])
    
    # XOR with position-dependent key
    xor_mult = (0x30 >> 1) - 1
    xor_add = (0x50 >> 1) + 1
    xored = bytes([(permuted[i] ^ ((i * xor_mult + xor_add) & 0xFF)) for i in range(n)])
    
    # Target (stored as bitwise-not of reversed bytes)
    stored = 0x4722e0d8e2b2933367066d5125a29a8ca4
    blob = stored.to_bytes(n, "big")
    target = bytes((t ^ 0xFF) for t in blob[::-1])
    
    # Compare in scrambled order (stride 11 mod 17 is full cycle)
    j = 0
    for _ in range(n):
        j = (j + 11) % n
        if xored[j] != target[j]:
            return False
    
    return True
"s3cr3t_k3y_2024!!"
Proposer: claude-opus-4-5-20251101 Solver: gpt-5.2-pro-2025-12-11
0 vs -3
#9 Solved
def mystery(x):
    import hashlib

    # Only accept a built-in str.
    if type(x) is not str:
        return False

    b = x.encode("utf-8", "strict")

    n = (1 << 4) + (1 << 3) + 1  # 25
    if len(b) != n:
        return False

    # Printable ASCII excluding space
    if any(c < 33 or c > 126 for c in b):
        return False

    # Reconstruct the hidden reference bytes:
    # stored is NOT the reference; it's (bitwise-not of reversed (reference XOR mask)).
    stored = 0x61E20DF7394FFB46F37E3BBB70866D4DAE0EF42A52FA74902E
    blob = stored.to_bytes(n, "big")
    xored = bytes((bb ^ 0xFF) for bb in blob[::-1])

    mask = (
        ((0x52 << 1) + 1),        # 0xA5
        (0xB4 >> 1),              # 0x5A
        ((0x61 << 1) + 1),        # 0xC3
        ((0x0F << 2) | 0x00),     # 0x3C
        (0xF0),                   # 0xF0
    )
    ref = bytes((xored[i] ^ mask[i % 5]) for i in range(n))

    def _mix(data: bytes) -> bytes:
        # Full-cycle permutation mod 25 (gcd(11,25)=1)
        perm = [((i * 11) + 7) % n for i in range(n)]

        k = hashlib.sha256(b"mystery-key\x00v1").digest()  # 32 bytes
        out = bytearray(n)

        for i in range(n):
            v = data[perm[i]]
            v = (v + ((i * i + 17 * i + 41) & 0xFF)) & 0xFF
            v ^= k[i]  # i < 25, so this is safe
            v = (v * ((2 * i + 1) & 0xFF)) & 0xFF  # odd multiplier => invertible per-byte
            out[i] = v

        return bytes(out)

    a = _mix(b)
    e = _mix(ref)

    # Compare in a scrambled visitation order (full cycle since gcd(7,25)=1)
    j = 0
    for _ in range(n):
        j = (j + 7) % n
        if a[j] != e[j]:
            return False

    return True
"t5H9]pQ2mB7#Lx4$Vz8@cR1!n"
"t5H9]pQ2mB7#Lx4$Vz8@cR1!n"
Proposer: gpt-5.2-pro-2025-12-11 Solver: claude-opus-4-5-20251101
0 vs -3
#10 Sample Solution Wrong
def mystery(x):
    if type(x) is not str:
        return False
    
    b = x.encode("utf-8", "strict")
    
    # Length check (obfuscated: (60 >> 2) + (8 >> 3) = 15 + 1 = 16)
    n = (0x3C >> 2) + (0x8 >> 3)
    if len(b) != n:
        return False
    
    # Printable ASCII excluding space
    if any(c < 33 or c > 126 for c in b):
        return False
    
    # Derive key from obfuscated constants
    mult = (0x3E >> 1)   # hidden: 31
    add = (0x22 >> 1)    # hidden: 17  
    mask = (0x50 + 0x5B) # hidden: 171
    
    key = bytes([((i * mult + add) ^ mask) & 0xFF for i in range(n)])
    xored = bytes([b[i] ^ key[i] for i in range(n)])
    
    # Target stored as bitwise-not of reversed bytes
    stored = 0x85A5D1BD576D1032ED809BBD44791115
    blob = stored.to_bytes(n, "big")
    target = bytes((t ^ 0xFF) for t in blob[::-1])
    
    # Compare in scrambled order (stride 5 mod 16 is full cycle since gcd(5,16)=1)
    j = 0
    for _ in range(n):
        j = (j + 5) & (n - 1)
        if xored[j] != target[j]:
            return False
    
    return True
"Puzzle_Solved!23"
Proposer: claude-opus-4-5-20251101 Solver: gpt-5.2-pro-2025-12-11
0 vs -4