(ЕГЭ-2023) Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы:
Например, маске \(123{*}4{?}5\) соответствуют числа \(123405\) и \(12300425.\)
Найдите все числа, меньшие \(10^8,\) соответствующие маске \(3{?}1{*}57\) и делящиеся без остатка на \(2023.\) В качестве ответа приведите все найденные числа в порядке возрастания, справа от каждого числа выведите результат его деления на \(2023.\)
Решение:
Python
from fnmatch import fnmatch
st = 30157 + (2023 - 30157 % 2023) % 2023
for n in range(st, 10**8, 2023):
if fnmatch(str(n), '3?1*57'):
print(n, n // 2023)
Ответ:
\(321657 \,\, 159\)
\(34105757 \,\, 16859\)
\(35117257 \,\, 17359\)
\(36128757 \,\, 17859\)
\(37140257 \,\, 18359\)
\(38151757 \,\, 18859\)
\(39163257 \,\, 19359\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене