На вход алгоритма подается натуральное число \(N.\) Алгоритм строит по нему новое число \(R\) следующим образом:
Полученная таким образом является двоичной записью искомого числа \(R.\) Например, для исходного числа \(4 = 100_2\) результатом является число \(10100_2 = 20,\) а для исходного числа \(5 = 101_2\) результатом является число \(110101_2 = 53.\) Укажите минимальное число \(R,\) которое может быть результатом работы данного алгоритма, при условии, что \(N\) не меньше \(17.\) В ответе запишите это число в десятичной системе счисления.
Решение:
Python
def R(N):
bn = bin(N)[2:]
if N % 2 == 0:
bn = '10' + bn
else:
bn = '1' + bn + '01'
return int(bn, 2)
#print(R(4), R(5))
print(min(R(N) for N in range(17, 101)))
Ответ: \(82\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене