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