Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку [32000; 43000], числа, имеющие ровно десять различных натуральных делителя, не считая единицы и самого числа. В качестве ответа запишите количество таких чисел.
n = set() # Подходящие числа
for x in range(32000, 43001):
ds = set() # Делители числа
for d in range(2, round(x**0.5)+1):
# Рассматриваем парные множители
if x % d == 0:
ds.add(d)
ds.add(x//d)
# Если делителей уже больше 10, то прекращаем работу цикла - такие числа нам не подходят
if len(ds) > 10:
break
if len(ds) == 10:
n.add(x)
print(len(n))
Ответ: 1104