def mystery(x):
if not isinstance(x, str) or len(x) < 5:
return False
w = x.lower()
if not w.isalpha():
return False
from collections import Counter
c = Counter(w)
return len(c) >= 3 and all(c[k] == ord(k) - 96 for k in c)
def mystery(x):
if not isinstance(x, str):
return False
if len(x) != 3:
return False
if not x.isdigit():
return False
n = int(x)
if n <= 1:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
if x != x[::-1]:
return False
square = n * n
if str(square) != str(square)[::-1]:
return False
return True
def mystery(x):
if not isinstance(x, str):
return False
if not x.isdigit() or len(x) != 4:
return False
n = int(x)
def is_prime(k):
if k < 2: return False
if k == 2: return True
if k % 2 == 0: return False
for i in range(3, int(k**0.5)+1, 2):
if k % i == 0: return False
return True
if not is_prime(n):
return False
rev = int(x[::-1])
if rev == n or not is_prime(rev):
return False
dsum = sum(int(d) for d in x)
if not is_prime(dsum):
return False
if (n + rev) % dsum != 0:
return False
return True
def mystery(x):
if not isinstance(x, str):
return False
if not x.isdigit():
return False
n = int(x)
if n <= 0:
return False
if len(x) != 3:
return False
digit_cube_sum = sum(int(d)**3 for d in x)
if digit_cube_sum != n:
return False
digit_sum = sum(int(d) for d in x)
if n % digit_sum != 0:
return False
import math
t = 8 * n + 1
if int(math.sqrt(t)) ** 2 != t:
return False
if int(math.sqrt(n)) ** 2 == n:
return False
return True
def mystery(x):
import math
if not isinstance(x, int) or x <= 0:
return False
s = str(x)
if len(s) != 4:
return False
if '0' in s or len(set(s)) != 4:
return False
sq = math.isqrt(x)
if sq * sq != x:
return False
for d in s:
if x % int(d) != 0:
return False
dsum = sum(int(d) for d in s)
if sq % dsum != 0:
return False
return True
def mystery(x):
import math
# Helper: perfect square check
def is_sq(n):
if n < 0:
return False
r = math.isqrt(n)
return r * r == n
# Convert input to string if possible
if isinstance(x, int):
s = str(x)
elif isinstance(x, str):
s = x
else:
return False
# Must be exactly 4 digits, no leading zero
if len(s) != 4 or not s.isdigit() or s[0] == '0':
return False
n = int(s)
digits = [int(ch) for ch in s]
# Exactly one zero
if s.count('0') != 1:
return False
# Not a palindrome
if s == s[::-1]:
return False
# Sum and product of digits
dsum = sum(digits)
dprod = 1
for d in digits:
dprod *= d
# Sum must be prime
if dsum < 2:
return False
for i in range(2, int(math.isqrt(dsum)) + 1):
if dsum % i == 0:
return False
# Product must be a perfect square
if not is_sq(dprod):
return False
# n divisible by sum
if n % dsum != 0:
return False
# n must be a perfect square
if not is_sq(n):
return False
# Square root of n must be a perfect square
sqrt_n = math.isqrt(n)
if not is_sq(sqrt_n):
return False
# Reverse must NOT be a perfect square
rev_n = int(s[::-1])
if is_sq(rev_n):
return False
return True
def mystery(x):
import math
if not isinstance(x, int) or x <= 0:
return False
s = str(x)
if len(s) != 5:
return False
if '0' in s or len(set(s)) != 5:
return False
disc = 1 + 8 * x
sq = math.isqrt(disc)
if sq * sq != disc:
return False
if (sq - 1) % 2 != 0:
return False
n = (sq - 1) // 2
if n < 2:
return False
for i in range(2, int(math.isqrt(n)) + 1):
if n % i == 0:
return False
dsum = sum(int(d) for d in s)
if dsum % 3 != 0:
return False
dprod = 1
for d in s:
dprod *= int(d)
sq2 = math.isqrt(dprod)
if sq2 * sq2 != dprod:
return False
return True
def mystery(x):
import math
def is_prime(n):
if n < 2:
return False
for i in range(2, int(math.isqrt(n)) + 1):
if n % i == 0:
return False
return True
def is_perfect_cube(n):
if n < 0:
return False
r = round(n ** (1/3))
return r * r * r == n
if isinstance(x, int):
s = str(x)
elif isinstance(x, str):
s = x
else:
return False
if len(s) != 4 or not s.isdigit() or s[0] == '0':
return False
n = int(s)
digits = [int(ch) for ch in s]
# Condition 1: perfect square
sqrt_n = math.isqrt(n)
if sqrt_n * sqrt_n != n:
return False
# Condition 2: digit sum prime
dsum = sum(digits)
if not is_prime(dsum):
return False
# Condition 3: digit product perfect cube
dprod = 1
for d in digits:
dprod *= d
if not is_perfect_cube(dprod):
return False
# Condition 4: square root's digit sum prime
sqrt_digits_sum = sum(int(ch) for ch in str(sqrt_n))
if not is_prime(sqrt_digits_sum):
return False
# Condition 5: exactly two distinct digits
if len(set(s)) != 2:
return False
return True
def mystery(x):
import math
def is_prime(n):
if n < 2: return False
if n == 2: return True
if n % 2 == 0: return False
for i in range(3, int(math.isqrt(n)) + 1, 2):
if n % i == 0: return False
return True
if not isinstance(x, int) or x <= 0:
return False
s = str(x)
if len(s) != 4:
return False
# Condition 1: x must be prime
if not is_prime(x):
return False
# Condition 2: x ≡ 1 (mod 4)
if x % 4 != 1:
return False
digits = [int(d) for d in s]
# Condition 3: sum of all digits must be prime
dsum = sum(digits)
if not is_prime(dsum):
return False
# Condition 4: first digit + last digit must be prime
if not is_prime(digits[0] + digits[-1]):
return False
# Condition 5: the number formed by the middle two digits must be prime
mid = int(s[1:3])
if not is_prime(mid):
return False
return True
def mystery(x):
# Accept either string or int, convert to int
if isinstance(x, str):
if not x.isdigit():
return False
if len(x) > 1 and x[0] == '0':
return False
x_int = int(x)
elif isinstance(x, int):
x_int = x
else:
return False
# Must be a 4-digit number
if not (1000 <= x_int <= 9999):
return False
# Condition 1: perfect cube
cube_root = round(x_int ** (1/3))
if cube_root ** 3 != x_int:
return False
s = str(x_int)
dsum = sum(int(d) for d in s)
# Condition 2: cube of digit sum equals the number
if dsum ** 3 != x_int:
return False
# Condition 3: digit sum is prime
if dsum < 2:
return False
for i in range(2, int(dsum ** 0.5) + 1):
if dsum % i == 0:
return False
return True