Advertisement
Guest User

Sjs

a guest
Jan 21st, 2020
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.75 KB | None | 0 0
  1. def eratosthenes():
  2.     sieve = list(range(100001))
  3.     sieve[1] = 0
  4.     for i in sieve:
  5.         if i > 1:
  6.             for j in range(i + i, len(sieve), i):
  7.                 sieve[j] = 0
  8.     return list(filter(lambda x: x != 0, sieve))
  9.  
  10.  
  11. def facts(i):
  12.     j = 0
  13.     fact = set()
  14.     while primes[j] < i:
  15.         temp = primes[j]
  16.         while i % temp == 0:
  17.             if temp in fact:
  18.                 return False
  19.             else:
  20.                 fact.add(primes[j])
  21.                 i /= temp
  22.         j += 1
  23.     return True
  24.  
  25.  
  26. primes = eratosthenes()
  27. primes.append(1)
  28. output = []
  29. a, b = map(int, input().split())
  30. for i in range(a, b):
  31.     if i in primes:
  32.         continue
  33.     if facts(i):
  34.         output.append(i)
  35. print(*output)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement