*(Д. Статный) Среди натуральных чисел, не превышающих \(10^9,\) найдите все числа, делящиеся на \(2023,\) у которых первые 6 делителей, отличные от самого числа и единицы, попарно просты (не имеют общих делителей, кроме \(1).\) В ответ укажите в порядке возрастания наименьшие \(5\) таких чисел, а также наибольшие \(5\) таких чисел. Справа от каждого числа укажите его максимальный делитель, отличный от самого числа.
Решение:
Python
from math import gcd, isqrt
from itertools import combinations
q = 0
for n in range(2023, 10**9, 2023):
divs = list({d for x in range(2, isqrt(n) + 1) if n % x == 0
for d in (x, n // x)})
if len(divs) >= 6:
divs.sort()
if all(gcd(a, b) == 1 for a, b in combinations(divs[:6], 2)):
print(n, max(divs))
q += 1
if q == 5:
break
st = 10**9 - 10**9 % 2023
q = 0
res = []
for n in range(st, 0, -2023):
divs = list({d for x in range(2, isqrt(n) + 1) if n % x == 0
for d in (x, n // x)})
if len(divs) >= 6:
divs.sort()
if all(gcd(a, b) == 1 for a, b in combinations(divs[:6], 2)):
res.append((n, max(divs)))
q += 1
if q == 5:
break
for n, d in res[::-1]:
print(n, d)
Ответ:
\(16489473 \,\, 5496491\)
\(27482455 \,\, 5496491\)
\(33268235 \,\, 6653647\)
\(41946905 \,\, 8389381\)
\(44839795 \,\, 8967959\)
\(979874441 \,\, 139982063\)
\(986275213 \,\, 140896459\)
\(992550559 \,\, 141792937\)
\(993812911 \,\, 141973273\)
\(994464317 \,\, 142066331\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене