Значение арифметического выражения
9 · 11210 + 8 · 11150 − x,
где х - целое положительное число, не превышающее 3000, записали в 11-ричной системе счисления.
Определите наибольшее значение х, при котором в 11-ричной записи числа, являющегося значением данного арифметического выражения, содержится ровно 60 нулей.
В ответе запишите число в десятичной системе счисления.
x = 1
y = 9 * 11**210 + 8 * 11**150 - x
c = 0
while y:
y, ost = divmod(y, 11)
if ost == 0:
c += 1
print(c)
📌 Результат: для каждого x считаем нули в 11-ричной записи числа y.
for x in range(1, 3000):
y = 9 * 11 ** 210 + 8 * 11 ** 150 - x
c = 0
while y:
y,ost = divmod(y, 11)
if ost == 0:
c += 1
if c == 60:
print(x)
📌 Результат: ищем наибольшее x (не больше 3000), при котором в записи ровно 60 нулей; ответ: 2992.
Поверните телефон
Горизонтальный режим удобнее для таблицы и Python-кода