(Е. Джобс) Автомат обрабатывает десятичное натуральное число \(N\) по следующему алгоритму:
Пример. Дано число \(13\). Оно преобразуется следующим образом: $$13 \to 21_6 \to 211_6 \to 1001111_2 \to 10011111_2 \to 159.$$ Укажите максимальное число, меньшее \(344,\) которое может являться результатом выполнения алгоритма.
Решение:
Python
def conv(n):
alph = '012345'
res = ''
while n:
res = alph[n % 6] + res
n //= 6
return res
def R(N):
sn = conv(N)
sn += sn[-1]
bn = bin(int(sn, 6))[2:]
bn += bn[-1]
return int(bn, 2)
#print(R(13))
print(max(R(N) for N in range(1, 400) if R(N) < 344))
Ответ: \(331\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене