Назовём нетривиальным делителем натурального числа его делитель, не равный единице и самому числу. Найдите все натуральные числа, принадлежащие отрезку \([152346; \, 957812]\) и имеющие ровно три нетривиальных делителя. Для каждого найденного числа запишите в ответе само число и его наибольший нетривиальный делитель. Найденные числа расположите в порядке возрастания.
Решение:
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(152346**0.25), int(957812**0.25) + 1):
if is_prime(x) and 152346 <= x**4 <= 957812:
print(x**4, x**3)
Ответ:
\(279841 \,\, 12167\)
\(707281 \,\, 24389\)
\(923521 \,\, 29791\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене