(Ю. Дрождинин) Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы:
Например, маске \(123{*}4{?}5\) соответствуют числа \(123405\) и \(12300405.\) Среди натуральных чисел, не превышающих \(10^{10,}\) найдите все числа, соответствующие маске \(7{?}43{?}38{*}1,\) делящиеся на \(2027\) без остатка. В ответе запишите все найденные числа в порядке возрастания, справа от каждого числа запишите частное от его деления на \(2027.\)
Решение:
Python
from fnmatch import fnmatch
n = 70430381 + (2027 - 70430381 % 2027) % 2027
while n <= 10**10:
ns = str(n)
if fnmatch(ns, '7?43?38*1'):
if ns[1] in '13579' and ns[4] in '13579':
print(n, n // 2027)
n += 2027
Ответ:
\(754333861 \,\, 372143\)
\(7943738001 \,\, 3918963\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене