diff --git a/python/e131.py b/python/e131.py new file mode 100644 index 0000000..9b222bd --- /dev/null +++ b/python/e131.py @@ -0,0 +1,29 @@ +from lib_prime import primes + + +def is_cube(n): + if n == 0: + return False + return round(n ** (1/3)) ** 3 == n + + +def euler_131(): + r = 0 + ps = primes(10**6) + minm = 1 + for p in ps: + for m in range(minm, minm + 20): + n = m * m * m + x = n * n * n + n * n * p + if is_cube(x): + # print(p, n) + r += 1 + minm = m + break + return r + + +if __name__ == "__main__": + solution = euler_131() + print("e131.py: " + str(solution)) + assert(solution == 173)