← All Duels

grok-4-fast-reasoning_vs_grok-4.20-0309-reasoning.jsonl — 10 puzzles

grok-4-fast-reasoning
0
vs
grok-4.20-0309-reasoning
0
#1 Solved
def mystery(x):
    try:
        n = int(x)
    except ValueError:
        return False
    s = str(n)
    if len(s) != 4:
        return False
    power = len(s)
    total = sum(int(d) ** power for d in s)
    return total == n
1634
1634
Proposer: grok-4-fast-reasoning Solver: grok-4.20-0309-reasoning
0 vs 0
#2 Solved
def mystery(x):
    try:
        n = int(x)
    except ValueError:
        return False
    if n < 10:
        return False
    d = [int(c) for c in str(n)]
    while True:
        s = sum(d)
        if s == n: return True
        if s > n: return False
        d = d[1:] + [s]
14
197
Proposer: grok-4.20-0309-reasoning Solver: grok-4-fast-reasoning
0 vs 0
#3 Solved
def mystery(x):
    try:
        n = int(x)
    except ValueError:
        return False
    s = str(n)
    if not s:
        return False
    t = str(n * 2)
    if len(t) != len(s):
        return False
    return t in (s + s)
142857
142857
Proposer: grok-4-fast-reasoning Solver: grok-4.20-0309-reasoning
0 vs 0
#4 Solved
def mystery(x):
    try:
        n = int(x)
    except ValueError:
        return False
    def fact(k):
        if k == 0 or k == 1: return 1
        r = 1
        for i in range(2, k + 1):
            r *= i
        return r
    total = 0
    m = n
    while m > 0:
        total += fact(m % 10)
        m //= 10
    return total == n and n > 100
145
40585
Proposer: grok-4.20-0309-reasoning Solver: grok-4-fast-reasoning
0 vs 0
#5 Solved
def mystery(x):
    try:
        n = int(x)
    except ValueError:
        return False
    s = str(n)
    if len(s) < 4:
        return False
    sq = str(n * n)
    return sq.endswith(s)
9376
9376
Proposer: grok-4-fast-reasoning Solver: grok-4.20-0309-reasoning
0 vs 0
#6 Solved
def mystery(x):
    try:
        n = int(x)
    except ValueError:
        return False
    def weird_pow(b, e):
        r = 1
        while e > 0:
            r *= b
            e -= 1
        return r
    total = 0
    m = n
    while m > 0:
        d = m % 10
        total += weird_pow(d, d)
        m //= 10
    return total == n and n > 1000
3435
3435
Proposer: grok-4.20-0309-reasoning Solver: grok-4-fast-reasoning
0 vs 0
#7 Solved
def mystery(x):
    try:
        n = int(x)
    except ValueError:
        return False
    if n < 1000:
        return False
    count = 0
    max_k = int(n ** (1/3)) + 2
    for i in range(1, max_k):
        i3 = i ** 3
        if i3 >= n:
            break
        for j in range(i + 1, max_k):
            j3 = j ** 3
            if i3 + j3 > n:
                break
            if i3 + j3 == n:
                count += 1
                if count >= 2:
                    return True
    return False
1729
1729
Proposer: grok-4-fast-reasoning Solver: grok-4.20-0309-reasoning
0 vs 0
#8 Solved
def mystery(x):
    try:
        n = int(x)
    except ValueError:
        return False
    def weird_mult(a, b):
        result = 0
        while b > 0:
            result += a
            b -= 1
        return result
    def weird_cube(k):
        return weird_mult(weird_mult(k, k), k)
    cubes = []
    k = 1
    while True:
        c = weird_cube(k)
        if c >= n:
            break
        cubes.append(c)
        k += 1
    count = 0
    for i in range(len(cubes)):
        i3 = cubes[i]
        for j in range(i + 1, len(cubes)):
            total = i3 + cubes[j]
            if total == n:
                count += 1
                if count >= 3:
                    return True
            if total > n:
                break
    return False
87539319
87539319
Proposer: grok-4.20-0309-reasoning Solver: grok-4-fast-reasoning
0 vs 0
#9 Solved
def mystery(x):
    try:
        n = int(x)
    except ValueError:
        return False
    def divisor_sum(m):
        if m < 2:
            return 0
        total = 1
        sqrt_m = int(m ** 0.5) + 1
        for i in range(2, sqrt_m):
            if m % i == 0:
                total += i
                j = m // i
                if j != i and j != m:
                    total += j
        return total
    s = divisor_sum(n)
    if s == n or s < n:  # Exclude perfect numbers and cases where s < n to avoid trivial
        return False
    t = divisor_sum(s)
    return t == n
220
220
Proposer: grok-4-fast-reasoning Solver: grok-4.20-0309-reasoning
0 vs 0
#10 Solved
def mystery(x):
    try:
        n = int(x)
    except ValueError:
        return False
    if n < 10000:
        return False
    def weird_mult(a, b):
        res = 0
        while b > 0:
            res += a
            b -= 1
        return res
    def weird_sqrt(m):
        s = 0
        while weird_mult(s + 1, s + 1) <= m:
            s += 1
        return s
    def divisor_sum(m):
        if m < 2:
            return 0
        total = 1
        sqrtm = weird_sqrt(m) + 1
        for i in range(2, sqrtm):
            if m % i == 0:
                total += i
                j = m // i
                if j != i and j != m:
                    total += j
        return total
    return divisor_sum(n) == n
33550336
33550336
Proposer: grok-4.20-0309-reasoning Solver: grok-4-fast-reasoning
0 vs 0