← All Duels

deepseek-reasoner_vs_gemini-2.5-pro_20260124_072715.jsonl — 10 puzzles

deepseek-reasoner
-1
vs
gemini-2.5-pro
-5
#1 Solved
def mystery(x):
    if not isinstance(x, str):
        return False
    if len(x) != 8 or not x.isdigit() or x[0] == '0':
        return False
    n = int(x)
    return n * n % 100000000 == n
"12890625"
"87109376"
Proposer: deepseek-reasoner Solver: gemini-2.5-pro
0 vs 0
#2 Sample Solution Wrong
import struct

def mystery(x):
    """
    This function takes a value x and returns True if it meets a hidden condition, False otherwise.
    """
    if not isinstance(x, float):
        return False

    # Avoid non-finite numbers like NaN or infinity, as their bit representation is special.
    if x != x or x == float('inf') or x == float('-inf'):
        return False

    try:
        # Pack the float into its 8-byte (64-bit) representation using IEEE 754 standard.
        # The '!' ensures network (big-endian) byte order.
        packed_float = struct.pack('!d', x)
        
        # Unpack the 8 bytes into a 64-bit unsigned integer.
        # This gives us the raw integer value of the float's bit pattern.
        integer_representation = struct.unpack('!Q', packed_float)[0]
        
        # Convert the integer to its binary string representation.
        # [2:] removes the '0b' prefix.
        # .zfill(64) pads with leading zeros to ensure it's always 64 bits long.
        binary_representation = bin(integer_representation)[2:].zfill(64)
        
        # The mystery condition: the binary representation must be a palindrome.
        return binary_representation == binary_representation[::-1]
    except (struct.error, OverflowError):
        # Catch potential errors with unusual float values.
        return False
123.45678901234567
Proposer: gemini-2.5-pro Solver: deepseek-reasoner
0 vs -1
#3 Sample Solution Wrong
def mystery(x):
    if not isinstance(x, int):
        return False
    # Convert to 32-bit unsigned representation
    x = x & 0xFFFFFFFF
    # XOR with a magic number
    y = (x ^ 0xDEADBEEF) & 0xFFFFFFFF
    # Swap the two 16-bit halves
    z = ((y >> 16) | ((y & 0xFFFF) << 16)) & 0xFFFFFFFF
    # Check against target
    return z == 0xCAFEBABE
1679844369
Proposer: deepseek-reasoner Solver: gemini-2.5-pro
-1 vs -1
#4 Sample Solution Wrong
import hashlib

def _is_prime(n):
    """
    A probabilistic primality test (Miller-Rabin).
    It is deterministic for all integers up to 3.3*10^14 with this set of bases.
    For a 256-bit number, the probability of a composite being falsely identified
    as prime is astronomically low.
    """
    if n < 2:
        return False
    if n == 2 or n == 3:
        return True
    if n % 2 == 0 or n % 3 == 0:
        return False
    
    d = n - 1
    s = 0
    while d % 2 == 0:
        d //= 2
        s += 1
    
    # A set of bases that are highly effective for 256-bit numbers.
    bases = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37]
    
    for a in bases:
        if a >= n:
            break
        # Check Fermat's Little Theorem: a^(n-1) = 1 (mod n)
        # but in a way that handles the Miller-Rabin conditions.
        x = pow(a, d, n)
        if x == 1 or x == n - 1:
            continue
        
        # Check if we find a non-trivial square root of 1 modulo n.
        # If we do, n is composite.
        is_composite = True
        for _ in range(s - 1):
            x = pow(x, 2, n)
            if x == n - 1:
                is_composite = False
                break
        if is_composite:
            return False
            
    return True

def mystery(x):
    """
    This function takes a value x and returns True if it meets a hidden condition, False otherwise.
    """
    if not isinstance(x, str):
        return False
    
    # The input string must not be empty.
    if not x:
        return False

    try:
        # Step 1: Encode the string into bytes using UTF-8.
        encoded_x = x.encode('utf-8')
        
        # Step 2: Compute the SHA-256 hash of the bytes.
        hasher = hashlib.sha256()
        hasher.update(encoded_x)
        hex_digest = hasher.hexdigest()
        
        # Step 3: Interpret the hexadecimal hash digest as a large integer.
        large_integer = int(hex_digest, 16)
        
        # Step 4: The mystery condition - check if this large integer is a prime number.
        return _is_prime(large_integer)
        
    except Exception:
        # Catch any unexpected errors during the process.
        return False
'60'
Proposer: gemini-2.5-pro Solver: deepseek-reasoner
-1 vs -2
#5 Solved
def mystery(x):
    # Accept either string or integer
    if isinstance(x, str):
        try:
            x = int(x)
        except ValueError:
            return False
    if not isinstance(x, int):
        return False
    if x <= 0:
        return False
    
    # Several decoy conditions that the solution must satisfy
    if x % 13 == 0:                     # not divisible by 13
        return False
    if pow(x, 2, 11) != 4:             # square modulo 11 must be 4
        return False
    if sum(int(d) for d in str(x)) % 2 != 0:  # digit sum even
        return False
    if x % 9 != 6:                      # modulo 9 condition
        return False
    
    # Core puzzle: find x such that x^3 mod 28891 equals a specific target
    modulus = 28891
    target = 16306
    
    # Compute x^3 modulo modulus using manual multiplication
    x_sq = (x * x) % modulus
    x_cube = (x_sq * x) % modulus
    
    return x_cube == target
42
42
Proposer: deepseek-reasoner Solver: gemini-2.5-pro
-1 vs -2
#6 Sample Solution Wrong
def mystery(x):
    """
    This function takes a value x and returns True if it meets a hidden condition, False otherwise.
    The fate of the mission depends on your selection.
    """
    # A set of pre-defined artifacts, each with a 'mass' and 'potency'
    artifacts = [
        (91, 72), (22, 94), (20, 22), (94, 66), (97, 21), (43, 83), (49, 39), (51, 89), 
        (10, 41), (92, 53), (44, 42), (10, 80), (14, 21), (58, 44), (43, 63), (35, 71), 
        (49, 43), (29, 31), (39, 78), (36, 11), (74, 98), (68, 41), (74, 57), (45, 12), 
        (73, 82), (76, 22), (11, 44), (94, 95), (13, 11), (30, 28), (20, 20), (18, 52), 
        (23, 100), (95, 71), (57, 51), (76, 79)
    ]
    
    # The carrying limit of the vessel
    mass_limit = 1042
    
    # The required total potency to activate the device
    target_potency = 1599

    if not isinstance(x, str) or len(x) != len(artifacts):
        return False
    
    # The selection must be a binary choice for each artifact.
    if not all(c in '01' for c in x):
        return False

    current_mass = 0
    current_potency = 0
    
    for i, choice in enumerate(x):
        if choice == '1':
            mass, potency = artifacts[i]
            current_mass += mass
            current_potency += potency
            
    if current_mass > mass_limit:
        return False
        
    return current_potency == target_potency
'111001011001101111101010101111111011'
Proposer: gemini-2.5-pro Solver: deepseek-reasoner
-1 vs -3
#7 Sample Solution Wrong
def mystery(x):
    if isinstance(x, str):
        if not x.isdigit():
            return False
        x = int(x)
    elif not isinstance(x, int):
        return False
    if x <= 0:
        return False
    if x % 2 == 0:
        return False
    if x % 11 != 0:
        return False
    if x % 13 != 0:
        return False
    b = bin(x)[2:]
    if b != b[::-1]:
        return False
    ones = b.count('1')
    if ones < 2:
        return False
    for i in range(2, int(ones**0.5) + 1):
        if ones % i == 0:
            return False
    if x % 143 != 0:
        return False
    return True
2145
Proposer: deepseek-reasoner Solver: gemini-2.5-pro
-2 vs -3
#8 Sample Solution Wrong
import hashlib

def mystery(x):
    """
    This function takes a value x and returns True if it meets a hidden condition, False otherwise.
    """
    # --- Maze Definition ---
    # The maze is infinite and generated on-the-fly. A tile is a wall
    # or an open space based on a cryptographic hash of its coordinates.
    _MAZE_SALT = "a_very_secret_salt_string_for_the_maze_v2"
    _TARGET_X, _TARGET_Y = 16, 13
    _START_X, _START_Y = 0, 0

    def _is_wall(px, py):
        """Determines if a coordinate is a wall based on its hash."""
        h = hashlib.sha256(f"{px}:{py}:{_MAZE_SALT}".encode()).hexdigest()
        # A wall exists if the first hex digit is in the set {'0', '1', '2', '3', '4', '5'}.
        # This creates a wall density of 6/16 or 37.5%.
        return h[0] in '012345'

    # --- Input Validation ---
    if not isinstance(x, str) or not all(c in 'UDLR' for c in x):
        return False

    # --- Path Simulation ---
    current_x, current_y = _START_X, _START_Y

    # The starting position itself must not be a wall. This is a subtle
    # but important check for the maze's validity.
    if _is_wall(current_x, current_y):
        return False

    # Simulate the path taken by the input string 'x'.
    for move in x:
        if move == 'U':
            current_y += 1
        elif move == 'D':
            current_y -= 1
        elif move == 'L':
            current_x -= 1
        elif move == 'R':
            current_x += 1
        
        # If any move leads into a wall, the path is invalid.
        if _is_wall(current_x, current_y):
            return False

    # The path is only successful if it ends exactly at the target coordinates.
    return (current_x, current_y) == (_TARGET_X, _TARGET_Y)
"RRRRRRRRRRRRRRRUUUUUUUUUUUUURDRDRDRDRDRDRDRDRDRDLULULULULULULULULULUUUUUUUU"
Proposer: gemini-2.5-pro Solver: deepseek-reasoner
-2 vs -4
#9 Solver Failed
def mystery(x):
    """
    Returns True if x satisfies a set of hidden conditions, False otherwise.
    x can be an integer or a string representing an integer.
    """
    # Convert to integer if string
    if isinstance(x, str):
        if not x.isdigit():
            return False
        x = int(x)
    elif not isinstance(x, int):
        return False

    # Must be a 9‑digit number
    if not (100_000_000 <= x <= 999_999_999):
        return False

    # Cannot end with 0
    if x % 10 == 0:
        return False

    # Not divisible by 3
    if x % 3 == 0:
        return False

    # Congruence modulo 7
    if x % 7 != 3:
        return False

    # Core condition: cube modulo 1 000 000 000 equals the number itself
    if pow(x, 3, 1_000_000_000) != x:
        return False

    return True
712900625
212890625
Proposer: deepseek-reasoner Solver: gemini-2.5-pro
-1 vs -4
#10 Sample Solution Wrong
import math

def mystery(x):
    """
    This function takes a value x and returns True if it meets a hidden set of conditions, False otherwise.
    """
    
    # Helper to check for primality.
    # A standard implementation to avoid drawing too much attention.
    def _is_prime(n):
        if n < 2: return False
        if n == 2 or n == 3: return True
        if n % 2 == 0 or n % 3 == 0: return False
        i = 5
        while i * i <= n:
            if n % i == 0 or n % (i + 2) == 0:
                return False
            i += 6
        return True

    # --- Input Validation and Filtering ---
    if not isinstance(x, int):
        return False
    
    # Condition 1: Must be a large number.
    if x <= 1_000_000:
        return False
        
    # Condition 2: A simple divisibility rule.
    if x % 5 != 0:
        return False
        
    # Condition 3: Another divisibility rule to narrow the search.
    if x % 3 == 0:
        return False
        
    # Condition 4: A property related to the digits of the number.
    # This might mislead the solver into thinking it's a digit-based puzzle.
    try:
        digit_sum = sum(int(d) for d in str(x))
        if not _is_prime(digit_sum):
            return False
    except ValueError:
        return False
        
    # --- Core Puzzle Logic ---
    # This section calculates the "stopping time" of a sequence.
    # The sequence is the famous Collatz sequence.
    
    n = x
    steps = 0
    
    # A limit to prevent potential (though conjectured not to exist) infinite loops.
    # Also serves to cap the computation time for any single input.
    max_steps = 600
    
    while n != 1:
        if steps > max_steps:
            # If it takes too long, it's not our number.
            return False
            
        if n % 2 == 0:
            n = n // 2
        else:
            # The 3n + 1 step.
            n = 3 * n + 1
        steps += 1
        
    # The final condition: the number of steps must match a specific target.
    target_steps = 500
    return steps == target_steps
1459335
Proposer: gemini-2.5-pro Solver: deepseek-reasoner
-1 vs -5