14 2027-Анисимов-5
Значение арифметического выражения 8 · 13170 + 3 · 13230 − x,
где x — целое положительное число, не превышающее 3120,
записали в 14-ричной системе счисления.
Определите наибольшее значение x, при котором в 14-ричной записи
числа, являющегося значением данного арифметического выражения, содержится ровно
19 шестёрок.
В ответе запишите число в десятичной системе счисления.
Функция sixes делит число на 14 и считает остатки,
равные 6. Для примера берём x = 1 и печатаем,
сколько шестёрок получилось в записи выражения.
def sixes(n):
c = 0
while n:
n, ost = divmod(n, 14)
if ost == 6:
c += 1
return c
x = 1
val = 8 * 13**170 + 3 * 13**230 - x
print(sixes(val))
Перебираем x от 3120 вниз. Как только шестёрок ровно 19, печатаем этот x и останавливаемся. Наибольшее такое значение — 2973.
for x in range(3120, 0, -1):
val = 8 * 13**170 + 3 * 13**230 - x
if sixes(val) == 19:
print(x)
break
Время решения
00:00.00
Нажмите «Пуск», когда начнёте решать
Пробел — пуск и пауза
Поверните телефон
Горизонтальный режим удобнее для таблицы и Python-кода