← All Duels

gpt-5.5_vs_claude-haiku-4-5.jsonl — 10 puzzles

gpt-5.5
2
vs
claude-haiku-4-5
0
#1 Solver Failed
def mystery(x):
    try:
        if isinstance(x, bool):
            return False
        y = int(x)
    except Exception:
        return False

    h = "3" + "f" * 319 + "7" + "f" * 230 + "8" + "0" * 318 + "1"
    n = int(h, 16)

    return 1 < y < n and n % y == 0
7
2**1279 - 1
Proposer: gpt-5.5 Solver: claude-haiku-4-5
1 vs 0
#2 Solved
def mystery(x):
    try:
        if isinstance(x, bool):
            return False
        y = int(x)
    except Exception:
        return False
    
    if y <= 1:
        return False
    
    n = 1000000007 * 1000000009
    return n % y == 0 and y < n
1000000007
1000000007
Proposer: claude-haiku-4-5 Solver: gpt-5.5
1 vs 0
#3 Solved
def mystery(x):
    try:
        if isinstance(x, bool):
            return False
        nonce = int(x)
    except Exception:
        return False

    if not (0 <= nonce <= 0xffffffff):
        return False

    import hashlib

    def le32(n):
        return n.to_bytes(4, "little")

    bits = 0x1D00FFFF

    header = (
        le32(1)
        + bytes(32)
        + bytes.fromhex(
            "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b"
        )[::-1]
        + le32(1231006505)
        + le32(bits)
        + le32(nonce)
    )

    h = hashlib.sha256(hashlib.sha256(header).digest()).digest()
    target = (bits & 0xFFFFFF) << (8 * ((bits >> 24) - 3))

    return int.from_bytes(h, "little") <= target
2083236893
2083236893
Proposer: gpt-5.5 Solver: claude-haiku-4-5
1 vs 0
#4 Solved
def mystery(x):
    try:
        if isinstance(x, bool):
            return False
        y = int(x)
    except Exception:
        return False
    
    if y <= 0 or y >= 10**9:
        return False
    
    # System of modular constraints
    return ((y % 7 == 3) and (y % 11 == 5) and 
            (y % 13 == 2) and (y % 17 == 8))
9817
9817
Proposer: claude-haiku-4-5 Solver: gpt-5.5
1 vs 0
#5 Solver Failed
def mystery(x):
    if not isinstance(x, str):
        return False

    alphabet = " ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    if not x or x[0] == " " or any(ch not in alphabet for ch in x):
        return False

    m = int("".join(f"{alphabet.index(ch):02d}" for ch in x))

    n = 114381625757888867669235779976146612010218296721242362562561842935706935245733897830597123563958705058989075147599290026879543541
    e = 9007
    c = 96869613754622061477140922254355882905759991124574319874695120930816298225145708356931476622883989628013391990551829945157815154

    return 0 < m < n and pow(m, e, n) == c
"HELLO WORLD"
"THE MAGIC WORDS ARE SQUEAMISH OSSIFRAGE"
Proposer: gpt-5.5 Solver: claude-haiku-4-5
2 vs 0
#6 Solved
def mystery(x):
    try:
        if isinstance(x, bool):
            return False
        y = int(x)
    except Exception:
        return False
    
    if y <= 0 or y >= 10**8:
        return False
    
    def sum_of_proper_divisors(n):
        if n <= 1:
            return 0
        total = 1
        i = 2
        while i * i <= n:
            if n % i == 0:
                total += i
                if i != n // i:
                    total += n // i
            i += 1
        return total
    
    return sum_of_proper_divisors(y) == y
6
6
Proposer: claude-haiku-4-5 Solver: gpt-5.5
2 vs 0
#7 Sample Solution Wrong
def mystery(x):
    try:
        if isinstance(x, bool):
            return False
        y = int(x)
    except Exception:
        return False

    if not (0 <= y < (1 << 400)):
        return False

    raw = y.to_bytes(50, "big")
    data = bytes(((17 * b + 23 * i + 7) & 0xff) for i, b in enumerate(raw))

    import hashlib
    import hmac

    key = bytes([0xaa]) * 20
    tag = hmac.new(key, data, hashlib.sha256).digest()[::-1]

    return hmac.compare_digest(
        tag,
        bytes.fromhex(
            "fe0ed686298f17c62edb0fe19f0e5929a78191d0ebb84d85460e80361ea93e77"
        ),
    )
int.from_bytes(bytes((((0xdd - 23*i - 7) * 241) & 0xff) for i in range(50)), "big")
Proposer: gpt-5.5 Solver: claude-haiku-4-5
1 vs 0
#8 Solved
def mystery(x):
    try:
        if isinstance(x, bool):
            return False
        y = int(x)
    except Exception:
        return False
    
    if y <= 0 or y > 10**6:
        return False
    
    def is_happy(n):
        seen = set()
        while n != 1 and n not in seen:
            seen.add(n)
            n = sum(int(digit) ** 2 for digit in str(n))
        return n == 1
    
    return is_happy(y)
1
7
Proposer: claude-haiku-4-5 Solver: gpt-5.5
1 vs 0
#9 Solver Failed
def mystery(x):
    if not isinstance(x, str):
        return False

    try:
        raw = x.encode("latin-1")
    except UnicodeEncodeError:
        return False

    if len(raw) != 56:
        return False

    import hashlib
    import hmac

    msg = bytes((b + 1) & 0xFF for b in raw)
    target = bytes.fromhex(
        "248d6a61d20638b8e5c026930c3e6039a33ce45964ff2167f6ecedd419db06c1"
    )

    return hmac.compare_digest(hashlib.sha256(msg).digest(), target)
"passwordpasswordpasswordpasswordpasswordpasswordpassword"
"\x60abcabcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnop"
Proposer: gpt-5.5 Solver: claude-haiku-4-5
2 vs 0
#10 Solved
def mystery(x):
    try:
        if isinstance(x, bool):
            return False
        y = int(x)
    except Exception:
        return False
    
    if y <= 0 or y > 10**12:
        return False
    
    import math
    
    # Check if y is a triangular number: y = n(n+1)/2
    # This means 8y + 1 must be a perfect square
    discriminant = 8 * y + 1
    sqrt_disc = int(math.isqrt(discriminant))
    
    if sqrt_disc * sqrt_disc != discriminant:
        return False
    
    # sqrt_disc must be odd for the triangular number formula to work
    if sqrt_disc % 2 == 0:
        return False
    
    # Check if y is also a perfect square
    sqrt_y = int(math.isqrt(y))
    return sqrt_y * sqrt_y == y
1
36
Proposer: claude-haiku-4-5 Solver: gpt-5.5
2 vs 0