Назовём нетривиальным делителем натурального числа его делитель, не равный единице и самому числу. Найдите все натуральные числа, принадлежащие отрезку \([358633892; \, 535672891]\) и имеющие ровно три нетривиальных делителя. Для каждого найденного числа запишите в ответе само число и его наибольший нетривиальный делитель. Найденные числа расположите в порядке возрастания.
Решение:
Python
def is_prime(n):
if n <= 2:
return n == 2
if n & 1 == 0:
return False
for d in range(3, int(n ** 0.5) + 1, 2):
if n % d == 0:
return False
return True
for x in range(int(358633892**0.25), int(535672891**0.25) + 1):
if is_prime(x) and 358633892 <= x**4 <= 535672891:
print(x**4, x**3)
Ответ:
\(373301041 \,\, 2685619\)
\(492884401 \,\, 3307949\)
\(519885601 \,\, 3442951\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене