Автомат обрабатывает натуральное число N по следующему алгоритму.
1. Строится двоичная запись числа N.
2. К этой записи дописываются справа ещё два разряда по следующему правилу: если
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью числа — результата работы данного алгоритма.
Укажите максимальное число R, которое не
Рассмотрим числа,
10210 = 11001102 — не может являться результатом работы алгоритма.
10110 = 11001012 — является результатом работы алгоритма.
Ответ: 101.
Приведём другое решение на языке Python.
for n in range(100, 1, -1):
s = bin(n)[2:] # перевод в двоичную систему
if n % 2 == 0:
s += "10"
else:
s += "01"
r = int(s, 2) # перевод в десятичную систему
if r <= 102:
print(r)
break

