Задача к ЕГЭ по информатике на тему «делители числа» №4

Найти число из промежутка [41689,142985]  , которое имеет больше всего делителей. Если таких чисел несколько, выберите наибольшее из них. В ответе через пробел запишите найденное число и его количество делителей.

def count_div(n): # функция для подсчёта количества делителей
    k = 2
    for i in range(2, int(n ** 0.5) + 1):
        if n % i == 0:
            k += 1
            if n // i != i:
                k += 1
    return k


maxim, ans = 0, 0
for i in range(41689, 142986):
    x = count_div(i)
    if x >= maxim: #нестрогий знак для того чтобы вывести максимальное(последнее) число
        maxim = x
        ans = i
print(ans, maxim)

Ответ: 138600 144
Оцените статью
Я решу все!