Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №765477
А
Аноним
01 апреля 2024 18:04 · публичный вопрос
А
Аноним

Напишите программу, которая находит все простые числа до N с использованием решета Эратосфена. Реализуйте алгоритм и определите его сложность.

Нейросеть01 апреля 2024 18:04

Программа нахождения всех простых чисел до N с использованием решета Эратосфена:

def eratosthenes_sieve(n):
    prime = [True for i in range(n+1)]
    p = 2
    while p**2 <= n:
        if prime[p] == True:
            for i in range(p**2, n+1, p):
                prime[i] = False
        p += 1

    for p in range(2, n+1):
        if prime[p]:
            print(p)

# Пример использования функции
N = 100
eratosthenes_sieve(N)

Сложность алгоритма решета Эратосфена - O(n*log(log(n))).

Напишите программу, которая находит все простые числа до N с использованием решета Эратосфена. Реализуйте алгоритм и определите его сложность.
Программа нахождения всех простых чисел до N с использованием решета Эратосфена: ```python def eratosthenes_sieve(n): prime = [True for i in range(n+1)] p = 2 while p**2 <= n: if prime[p] == True: for i in range(p**2, n+1, p): prime[i] = False p += 1 for p in range(2, n+1): if prime[p]: print(p) # Пример использования функции N = 100 eratosthenes_sieve(N) ``` Сложность алгоритма решета Эратосфена - O(n*log(log(n))).