Обозначим через \(P(N)\) – произведение \(5\) наименьших различных нетривиальных делителей натурального числа \(N\) (не считая единицы и самого числа). Если у числа \(N\) меньше \(5\) таких делителей, то \(P(N)\) считается равным нулю. Найдите \(5\) наименьших натуральных чисел, превышающих \(400~000~000,\) для которых \(P(N)\) оканчивается на \(17\) и не превышает \(N.\) В ответе для каждого найденного числа запишите сначала значение \(P(N),\) а затем – наибольший делитель, вошедший в произведение \(P(N).\)
Решение:
Python
from math import isqrt
q = 0
for n in range(400_000_001, 10**100):
divs = list({d for x in range(2, isqrt(n) + 1) if n % x == 0
for d in (x, n // x)})
if len(divs) >= 5:
divs.sort()
p = 1
for x in divs[:5]:
p *= x
if p % 100 == 17 and p <= n:
q += 1
print(p, divs[4])
if q == 5:
break
Ответ:
\(782217 \,\, 37\)
\(166617 \,\, 33\)
\(2880117 \,\, 93\)
\(74874717 \,\, 111\)
\(725517 \,\, 53\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене