← К задачам
Числа с ровно 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
Для запуска тестов необходима авторизация.