Задание 5. Информатика. ЕГЭ. Поляков-3521
- Просмотры: 28
- Изменено: 13 апреля 2025
(Е. Джобс) Автомат обрабатывает десятичное натуральное число \(N\) по следующему алгоритму:
- Строится двоичная запись числа \(N.\)
- Если число чётное, справа (в конец двоичной записи числа) приписывается \(1,\) в противном случае справа приписывается \(0.\)
- Для полученного числа пункт 2 повторяется ещё один раз.
Например, двоичная запись \(1001\) числа \(9\) будет преобразована в \(100101.\) Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа \(N)\) является двоичной записью числа — результата работы данного алгоритма. Укажите максимальное число \(N,\) для которого результат работы алгоритма будет меньше \(171.\) В ответе это число запишите в десятичной системе счисления.
Решение:
Python
def R(N):
bn = f'{N:b}'
bn += '1' if bn[-1] == '0' else '0'
bn += '1' if bn[-1] == '0' else '0'
return int(bn, 2)
print(max(N for N in range(1, 1000) if R(N) < 171))
Ответ: \(42\)