Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 25. Информатика. ЕГЭ. Поляков-7778
- Просмотры: 189
- Изменено: 25 января 2026
Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы:
- символ «\(?\)» означает ровно одну произвольную цифру;
- символ «\(*\)» означает любую последовательность цифр произвольной длины; в том числе «\(*\)» может задавать и пустую последовательность.
Например, маске \(123{*}4?5\) соответствуют числа \(123405\) и \(12300425.\)
Найдите все натуральные числа, принадлежащие интервалу \([3 \cdot 10^8; \, 6 \cdot 10^8],\) которые соответствуют маске \(?{*}26{*}89\) и имеют ровно три натуральных делителя. В ответе запишите все найденные числа в порядке возрастания, справа от каждого числа запишите его второй по величине делитель.
Решение:
Python
from fnmatch import fnmatch
def is_prime(n):
if n < 2:
return False
if n == 2:
return True
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
for n in range(int((3 * 10**8)**0.5), int((6 * 10**8)**0.5) + 1):
if is_prime(n) and fnmatch(str(n**2), '?*26*89'):
print(n**2, n)
Ответ:
\(312688489 \,\, 17683\)
\(346592689 \,\, 18617\)
\(457232689 \,\, 21383\)
\(500282689 \,\, 22367\)
\(509269489 \,\, 22567\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


