Задача #2237
Делители и маски
(Е.Джобс) Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы:
- символ «?» означает ровно одну произвольную цифру;
- символ «*» означает любую последовательность цифр произвольной длины; в том числе «*» может задавать и пустую последовательность.
Среди натуральных чисел, не превышающих 1013, найдите все числа, соответствующие маске 12?345?67089?, делящиеся на 206 без остатка. В ответе запишите в первом столбце таблицы все найденные числа в порядке возрастания, а во втором столбце – соответствующие им результаты деления этих чисел на 206.
Решение
Ответ
Видео по задаче
for a in range(1000):
x = int(f'12{a // 100}345{a // 10 % 10}67089{a % 10}')
if x % 206 == 0:
print(x, x // 206)