def find_lcm_lt(n): """Return the Least Common Multiple of all numbers in range [2, n).""" primes = primes_import.get_primes_lt(n) max_powers = set(primes) for prime in primes: prime_power = prime ** 2 if prime_power < n: while prime_power * prime < n: prime_power *= prime max_powers.remove(prime) max_powers.add(prime_power) return reduce(lambda x, y: x * y, max_powers)
""" Code by Gonzalo Rolon Morinelli, Sep 21 2015. The following code was originally written as a solution for Project Euler's Problem# 10. For more information, goto: https://projecteuler.net/problem=10 """ import p003_primes as primes_import if __name__ == '__main__': # Problem solution print sum(primes_import.get_primes_lt(2000000))