Медленно и подробно: проверка числа на простоту
Разложим решение на шаги и объясним, что происходит на каждом из них.
Задача
Определить, является ли число n простым. Достаточно проверять делители до квадратного корня из n.
Решение
def is_prime(n: int) -> bool:
if n < 2:
return False
for d in range(2, int(n ** 0.5) + 1):
if n % d == 0:
return False
return True
print(is_prime(29))
Как это работает
Если у числа есть делитель, больший корня, то у него есть и парный меньший. Поэтому перебор до √n гарантированно находит любой составной делитель.
Пример работы
True
Сложность
O(√n) по времени, O(1) по памяти.
Разбор по шагам
- Шаг 1. Входные данные. Проверяем, что приходит в функцию, и какие значения считаются корректными.
- Шаг 2. Основной цикл. Именно здесь происходит вся работа; следим за изменениями переменных на каждой итерации.
- Шаг 3. Результат. Убеждаемся, что возвращаемое значение соответствует условию задачи, включая крайние случаи.
Когда каждый шаг понятен, доработка решения перестаёт быть лотереей.
Related:
- Nasteppa OnlyFans лиза и обнаженные фото | Слив Nasteppa
- 秘密 教学
- Частые ошибки при решении: подсчёт частот слов
- topic links 2.0
- loud house rule 34 lola
- Типичные ошибки при решении: числа Фибоначчи
- погода в горловке на 10 дней
- Пишем решение с тестами: сортировка пузырьком
- Типичные ошибки при решении: шифр Цезаря
- sarem uysal porno
- Медленно и подробно: решето Эратосфена
- 苏文倩
- ai脱衣
- Решаем и тестируем: числа Фибоначчи
- Step-by-step: quicksort
- فضايح نودز تويتر نودز عراقي سكس مصري أفلام حصرية
- 윈터 딥페
- https://paper.wf/laurakoch98log/judith-adam-porn-video-scenes-with-mature-passion
- кассиль л богатыри
- Изучаем задачу: максимум и минимум списка
- ديوث أمهات تويتر: صور جنسية إباحية منشورة على منصة X