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

Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку [591645; 592845], число, имеющее максимальное количество различных натуральных делителей, если таких чисел несколько — найдите минимальное из них. В ответе запишите через пробел количество делителей такого числа и само число.

def divs(x):#Функция,возвращающая список делителей определённого числа
    d = set()
    for i in range(1,int(x**0.5)+1):
        if x % i == 0:
            d |= {i,x//i}
    return sorted(d)
mx = 0
number = 0
for x in range(591645,592846):
    d = divs(x)
    if len(d) > mx: # cтрогий знак так как нам нужно определить минимальное(первое) число
        mx = len(d)
        number = x
print(mx,number)

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