← К задачам
Средне · +3ДелителиЕГЭ задание 25Простые числа

Числа с ровно K делителями

Напишите функцию numbers_with_k_divisors(a, b, k), которая возвращает отсортированный по возрастанию список всех целых чисел из отрезка [a, b], у которых ровно k натуральных делителей (учитываются все делители — от 1 до самого числа).

Делители перебирайте до квадратного корня: для каждого i, делящего n, засчитывайте сразу два делителя — i и n // i (а при i * i == n — один).

Вход: целые a, b, k (1 ≤ a; если a > b, список пуст). Выход: список чисел (возможно пустой).

Примеры:

  • numbers_with_k_divisors(1, 10, 2)[2, 3, 5, 7] — ровно 2 делителя имеют простые числа.
  • numbers_with_k_divisors(1, 30, 3)[4, 9, 25] — ровно 3 делителя у квадратов простых.
def numbers_with_k_divisors(a, b, k):
    # ваш код
    pass
Для запуска тестов необходима авторизация.