← All Duels

claude-opus-4-5-20251101_vs_gemini-3-pro-preview_20260124_065154.jsonl — 10 puzzles

claude-opus-4-5-20251101
0
vs
gemini-3-pro-preview
-1
#1 Solved
def mystery(x):
    if not isinstance(x, str) or len(x) != 8:
        return False
    try:
        n = int(x, 16)
    except ValueError:
        return False
    return n ^ 0xDEADCAFE == 0xBEEFBABE
"60427040"
"60427040"
Proposer: claude-opus-4-5-20251101 Solver: gemini-3-pro-preview
0 vs 0
#2 Solver Failed
def mystery(x):
    if not isinstance(x, str):
        return False
    try:
        v = int(x, 16)
    except ValueError:
        return False
        
    # Ensure 128-bit unsigned integer
    MASK = (1 << 128) - 1
    if v > MASK or v < 0:
        return False

    # 1. Self-XOR mixing
    v ^= (v >> 64)
    
    # 2. Additive constant
    v = (v + 0xDEADBEEF) & MASK
    
    # 3. Rotate Left 16 bits (in 128-bit space)
    v = ((v << 16) | (v >> 112)) & MASK
    
    # 4. Final Check
    TARGET = 0x12345678000000001234567800000000
    CHECK  = 0xCAFEBABE00000000CAFEBABE00000000
    
    return (v ^ CHECK) == TARGET
"D8CAECC6000000000000E2DE0111"
"0000D8CAECC6000000000000E2DE4111"
Proposer: gemini-3-pro-preview Solver: claude-opus-4-5-20251101
0 vs 1
#3 Solved
def mystery(x):
    if not isinstance(x, str) or len(x) != 8:
        return False
    
    if not all('a' <= c <= 'z' for c in x):
        return False
    
    v = [ord(c) for c in x]
    h = 0
    MOD = 10**9 + 7
    for i, c in enumerate(v):
        h = ((h * 31) + c + (i * 17)) % MOD
    
    return h == 969600547
"ajguwbdl"
"puzzling"
Proposer: claude-opus-4-5-20251101 Solver: gemini-3-pro-preview
0 vs 1
#4 Sample Solution Wrong
def mystery(x):
    if not isinstance(x, str) or len(x) != 32:
        return False
    try:
        # Parse 32-char hex string into four 32-bit integers
        vals = [int(x[i:i+8], 16) for i in range(0, 32, 8)]
    except ValueError:
        return False
        
    a, b, c, d = vals
    M = 0xFFFFFFFF
    
    # Mixing Round 1
    a = (a + b) & M
    c = c ^ a
    d = d ^ ((b + c) & M)
    b = (b + ((a | d) ^ c)) & M
    
    # Mixing Round 2
    a = a ^ d
    b = (b - c) & M
    c = (c + (b << 3)) & M
    d = d ^ (a >> 2)
    
    return [a, b, c, d] == [0x2B9F877E, 0x307BB3DD, 0xFADF2258, 0x88D41F0C]
"DEADBEEFCAFEBABEDEADFADDC033C0FD"
Proposer: gemini-3-pro-preview Solver: claude-opus-4-5-20251101
0 vs 0
#5 Solved
def mystery(x):
    if not isinstance(x, str) or len(x) != 16:
        return False
    if not all(c in '0123456789abcdef' for c in x):
        return False
    
    n = int(x, 16)
    
    y = n
    y ^= 0xA5A5A5A5A5A5A5A5
    y ^= (y >> 32)
    y ^= 0x5A5A5A5A5A5A5A5A
    
    return y == 0x1234567890ABCDEF
"edcba987273a3e32"
"edcba987273a3e32"
Proposer: claude-opus-4-5-20251101 Solver: gemini-3-pro-preview
0 vs 0
#6 Sample Solution Wrong
def mystery(x):
    if not isinstance(x, str) or len(x) != 16:
        return False
    try:
        val = int(x, 16)
    except ValueError:
        return False
    
    # Pre-processing mixing
    val ^= 0x1234567890ABCDEF
    
    # Split 64-bit integer into two 32-bit halves
    L = (val >> 32) & 0xFFFFFFFF
    R = val & 0xFFFFFFFF
    
    # 4-round Feistel Network
    keys = [0x13371337, 0xDEADBEEF, 0xCAFEBABE, 0xFACEFEED]
    
    for k in keys:
        # Round function F(R, k)
        # 1. Bitwise mixing of R
        mixed_R = ((R << 4) ^ (R >> 5)) & 0xFFFFFFFF
        # 2. Add round key (modulo 2^32)
        f_out = (mixed_R + k) & 0xFFFFFFFF
        
        # Feistel swap structure:
        # New R = Old L XOR F(Old R)
        # New L = Old R
        new_R = L ^ f_out
        L = R
        R = new_R
        
    # Final check
    return L == 0x642df1e1 and R == 0xcc2971fc
"0123456789abcdef"
Proposer: gemini-3-pro-preview Solver: claude-opus-4-5-20251101
0 vs -1
#7 Solved
def mystery(x):
    if not isinstance(x, str) or len(x) != 10:
        return False
    if not x.isalnum():
        return False
    if x != x[::-1]:
        return False
    if sum(ord(c) for c in x) != 1006:
        return False
    if x[4] != x[5] or not x[4].isdigit():
        return False
    if any(c.isdigit() for c in x[:4]):
        return False
    if len(set(x[:4])) != 1:
        return False
    if x[0] <= 'p':
        return False
    return True
"qqqq33qqqq"
"qqqq33qqqq"
Proposer: claude-opus-4-5-20251101 Solver: gemini-3-pro-preview
0 vs -1
#8 Solved
def mystery(x):
    if not isinstance(x, str) or len(x) != 12:
        return False
    try:
        val = int(x, 16)
    except ValueError:
        return False
    
    # Split into three 16-bit integers
    a = (val >> 32) & 0xFFFF
    b = (val >> 16) & 0xFFFF
    c = val & 0xFFFF
    
    # Round 1: Mixing
    a = (a + b) & 0xFFFF
    b = (b ^ c) & 0xFFFF
    c = (c + a) & 0xFFFF
    
    # Round 2: More Mixing
    a = (a ^ 0x1234) & 0xFFFF
    b = (b - a) & 0xFFFF
    c = (c ^ b) & 0xFFFF
    
    # Round 3: Permutation & Final adjustment
    # 16-bit Rotate Left 5
    a = ((a << 5) | (a >> 11)) & 0xFFFF
    # 16-bit Rotate Right 3
    b = ((b >> 3) | (b << 13)) & 0xFFFF
    # Bitwise NOT
    c = ~c & 0xFFFF
    
    return a == 0xDEAD and b == 0xBEEF and c == 0xCAFE
"58F823C945BB"
"58f823c945bb"
Proposer: gemini-3-pro-preview Solver: claude-opus-4-5-20251101
0 vs -1
#9 Solved
def mystery(x):
    if not isinstance(x, int) or x <= 0 or x > 10**6:
        return False
    
    def is_prime(n):
        if n < 2:
            return False
        for i in range(2, int(n**0.5) + 1):
            if n % i == 0:
                return False
        return True
    
    P = 840
    for a in range(1, 10):
        if P % a: continue
        for b in range(a + 1, 10):
            if P % (a * b): continue
            for c in range(b + 1, 10):
                if P % (a * b * c): continue
                d = P // (a * b * c)
                if c < d < 10 and is_prime(a + b + c + d):
                    if sum(i**4 for i in [a,b,c,d]) == x:
                        return True
    return False
7203
7203
Proposer: claude-opus-4-5-20251101 Solver: gemini-3-pro-preview
0 vs -1
#10 Solved
def mystery(x):
    if not isinstance(x, str) or len(x) != 16:
        return False
    try:
        val = int(x, 16)
    except ValueError:
        return False
    
    # Split into four 16-bit integers: w, x_val, y, z
    w = (val >> 48) & 0xFFFF
    x_val = (val >> 32) & 0xFFFF
    y = (val >> 16) & 0xFFFF
    z = val & 0xFFFF
    
    mask = 0xFFFF
    
    # 1. Mix w into x
    x_val = x_val ^ w
    
    # 2. Add z to y
    y = (y + z) & mask
    
    # 3. Rotate z left by 7 bits
    z = ((z << 7) | (z >> 9)) & mask
    
    # 4. Subtract y from w
    w = (w - y) & mask
    
    # 5. Rotate x right by 5 bits
    x_val = ((x_val >> 5) | (x_val << 11)) & mask
    
    # 6. XOR z into y
    y = y ^ z
    
    # Check against target values
    return (w == 0x4321 and 
            x_val == 0x8765 and 
            y == 0xCDBA and 
            z == 0xAB0F)
"A9D64566475F1F56"
"a9d64566475f1f56"
Proposer: gemini-3-pro-preview Solver: claude-opus-4-5-20251101
0 vs -1