# your code goes here
def get_primes(limit):
"""Returns a list of prime numbers up to `limit` using Sieve of Eratosthenes."""
if limit < 2:
return []
is_prime = [True] * (limit + 1)
is_prime[0] = is_prime[1] = False
for p in range(2, int(limit**0.5) + 1):
if is_prime[p]:
for i in range(p * p, limit + 1, p):
is_prime[i] = False
return [num for num, prime in enumerate(is_prime) if prime]
# Print primes in range [1, 100]
start, end = 1, 100
primes = [p for p in get_primes(end) if p >= start]
for prime in primes:
print(prime)
IyB5b3VyIGNvZGUgZ29lcyBoZXJlCmRlZiBnZXRfcHJpbWVzKGxpbWl0KToKICAgICIiIlJldHVybnMgYSBsaXN0IG9mIHByaW1lIG51bWJlcnMgdXAgdG8gYGxpbWl0YCB1c2luZyBTaWV2ZSBvZiBFcmF0b3N0aGVuZXMuIiIiCiAgICBpZiBsaW1pdCA8IDI6CiAgICAgICAgcmV0dXJuIFtdCgogICAgaXNfcHJpbWUgPSBbVHJ1ZV0gKiAobGltaXQgKyAxKQogICAgaXNfcHJpbWVbMF0gPSBpc19wcmltZVsxXSA9IEZhbHNlCgogICAgZm9yIHAgaW4gcmFuZ2UoMiwgaW50KGxpbWl0KiowLjUpICsgMSk6CiAgICAgICAgaWYgaXNfcHJpbWVbcF06CiAgICAgICAgICAgIGZvciBpIGluIHJhbmdlKHAgKiBwLCBsaW1pdCArIDEsIHApOgogICAgICAgICAgICAgICAgaXNfcHJpbWVbaV0gPSBGYWxzZQoKICAgIHJldHVybiBbbnVtIGZvciBudW0sIHByaW1lIGluIGVudW1lcmF0ZShpc19wcmltZSkgaWYgcHJpbWVdCgoKIyBQcmludCBwcmltZXMgaW4gcmFuZ2UgWzEsIDEwMF0Kc3RhcnQsIGVuZCA9IDEsIDEwMApwcmltZXMgPSBbcCBmb3IgcCBpbiBnZXRfcHJpbWVzKGVuZCkgaWYgcCA+PSBzdGFydF0KCmZvciBwcmltZSBpbiBwcmltZXM6CiAgICBwcmludChwcmltZSk=