(n=10000) время больше двух секунд. Что делать?
P.S. https://pastebin.com/9AUCm7hd
P.S. Простое число — это натуральное число, которое имеет ровно два различных натуральных делителя: единицу и самого себя. Последовательность простых чисел начинается так: 2, 3, 5, 7, 11, 13, 17, 19, 23,...
Напишите программу, которая выведет все простые числа на отрезке [1,n] в порядке возрастания.
Входные данные
В единственной строке входных данных записано целое число n (1 ≤ n ≤ 10000).
Выходные данные
Выведите все простые числа на отрезке [1,n] по возрастанию по одному в строке.
Пример(ы)
input.txt
25
output.txt
2
3
5
7
11
13
17
19
23
ограничение времени на тест: 2 seconds ограничение памяти на тест: 64 megabytes ввод: standard вывод: standard
Решето Эратосфена в помощь Короче вот сюда: https://t.me/joinchat/AAAAAEHb2qHizHNLpTX0pA Не знаю, как этот чат по алгоритмам кратко пишется
я просто подумал, вдруг я с точки зрения языка использую что-нибудь медленное)
А что там кроме деления и расчета корня то? Корень скорее всего оптимизированный там реализован, так что алгоритм надо исправлять
Вбей массив до 10000 из простых чисел и получишь время меньше секунды 😏
Обсуждают сегодня