(Е. Джобс) На вход алгоритма подаётся натуральное число \(N.\) Алгоритм строит по нему новое число \(R\) следующим образом:
Например, для числа \(13 = 1101_2\) получается \(111101_2 = 61,\) для числа \(10 = 1010_2\) получается \(1101010_2 = 106.\) Укажите максимальное число \(R,\) не превышающее \(223,\) которое может являться результатом работы данного алгоритма. В ответе это число запишите в десятичной системе счисления.
Решение:
Python
def R(N):
bn = f'{N:b}'
if N % 5 == 0:
bn = '1' + bn + bn[-2:]
else:
bn = f'{N % 5 : b}' + bn
return int(bn, 2)
print(max(R(N) for N in range(5, 230) if R(N) < 223))
Ответ: \(219\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене