(С. Скопинцева) Алгоритм получает на вход натуральное число \(N > 1\) и строит по нему новое число \(R\) следующим образом:
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа \(N)\) является двоичной записью искомого числа \(R.\) Укажите наибольшее число \(R,\) меньшее \(57,\) которое может быть получено в результате работы данного алгоритма. В ответе это число запишите в десятичной системе счисления.
Решение:
Python
def R(N):
bn = f'{N:b}'
bn += str(int(bn.count('1') > bn.count('0')))
bn += str(int(bn.count('1') > bn.count('0')))
return int(bn, 2)
print(max(R(N) for N in range(2, 60) if R(N) < 57))
Ответ: \(55\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене