268 At Least Four Distinct Prime Factors Less Than 100.py 698 B

1234567891011121314151617181920212223242526
  1. #!/usr/bin/python
  2. # At Least Four Distinct Prime Factors Less Than 100
  3. # https://projecteuler.net/problem=268
  4. from sympy import primerange, lcm, prod
  5. from itertools import combinations
  6. def count_divisible_numbers(limit, max_primes):
  7. primes = list(primerange(1, max_primes + 1))
  8. total_count = 0
  9. for k in range(4, len(primes) + 1):
  10. print(k)
  11. for prime_combination in combinations(primes, k):
  12. lcm_value = prod(list(prime_combination))
  13. total_count += limit // lcm_value
  14. return total_count
  15. limit = 10**16 - 1
  16. max_primes = 100
  17. result = count_divisible_numbers(limit, max_primes)
  18. print(result) #=> 2304177487018306 (however, it's wrong)