Задача #2987

Делители и маски

Уровень ЕГЭ

(В. Зарянкин) Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы:]\

1) символ «?» означает ровно одну произвольную цифру;
2) символ «&» означает последовательность цифр, образующих степень двойки (1, 2, 4, 8, 16, ...).

Например, маске 12&3? могут соответствовать числа 12135 и 123237.

Среди натуральных чисел, не превышающих 1010, найдите числа, соответствующие маске 8902??&, делящиеся на 1432 без остатка.

В ответе запишите в первом столбце таблицы первые 5 найденных чисел в порядке возрастания, а во втором столбце – соответствующие им результаты деления этих чисел на 1432.

Количество строк в таблице для ответа избыточно.

Ответ
Войдите, чтобы история ответов и статистика сохранялись.
Решение Нажми, чтобы открыть

Ответ

8902744
6217
890214256
621658
890261512
621691
890280128
621704
8902108192
6216556

from itertools import *
answers=[]
for q0 in '0123456789':
for q1 in '0123456789':
for amp in [str(2**x) for x in range(20)]:
s='8902'+q0+q1+amp
if int(s)%1432==0 and int(s)<=10**10:
answers.append((int(s), int(s)//1432))

answers=sorted(answers)
for i in range(5):
print(answers[i][0],answers[i][1])

Быстрый переход
Перейти к задаче