Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 25. Информатика. ЕГЭ. Поляков-7783
- Просмотры: 308
- Изменено: 25 января 2026
Пусть \(M(N)\) – сумма двух наибольших различных натуральных делителей натурального числа \(N,\) не считая самого числа и единицы. Если у числа \(N\) меньше двух таких делителей, то \(M(N)\) считается равным \(0.\) Найдите все такие числа \(N,\) что $$256~501~000 \leqslant N \leqslant 256~551~000,$$ а десятичная запись числа \(M(N)\) заканчивается на \(1203.\) В ответе перечислите все найденные числа \(N\) в порядке возрастания, справа от каждого запишите соответствующее значение \(M.\) Данные отсортируйте по возрастанию значений M.
Решение:
Python
def sum_div(n):
div = set()
for i in range(2, int(n**0.5)+1):
if n % i == 0:
div.add(i)
div.add(n//i)
if len(div) > 3:
break
div = list(div)
div.sort()
return div[-2] + div[-1] if len(div) > 1 else 0
ans = []
for N in range(256_501_000, 256_551_001):
M = sum_div(N)
if M % 10000 == 1203:
ans.append((M, N))
ans.sort()
for M, N in ans:
print(N, M)
Ответ:
\(256522402 \,\, 128261203\)
\(256513274 \,\, 128371203\)
\(256528538 \,\, 164911203\)
\(256530290 \,\, 179571203\)
\(256521604 \,\, 192391203\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


