Вот задача: Найдите все натуральные числа, принадлежащие отрезку [101 000 000; 102 000 000], у которых ровно три различных чётных делителя. В ответе перечислите найденные числа в порядке возрастания Мой код:
for i in range(101000000,102000001): if i % 2 != 0: continue c = 1 for j in range(2, i//2 + 1): if j % 2 == 0: c += 1 if c > 3: break if c == 3: print(i)
Программа работает слишком долго. Как можно её оптимизировать?