Задание 5. Информатика. ЕГЭ. Поляков-4131
- Просмотры: 21
- Изменено: 14 апреля 2025
(А. Богданов) Алгоритм получает на вход натуральное число \(N > 1\) и строит по нему новое число \(R\) следующим образом:
- Число \(N\) переводим в двоичную запись.
- Инвертируем все биты числа кроме первого.
- Переводим в десятичную запись.
- Складываем результат с исходным числом \(N.\)
Полученное число является искомым числом \(R.\) Укажите наименьшее нечетное число \(N\), для которого результат работы данного алгоритма больше \(99.\) В ответе это число запишите в десятичной системе счисления.
Решение:
Python
def R(N):
bn = f'{N:b}'
t = bn[1:]
t = t.replace('0', 'x').replace('1', '0').replace('x', '1')
return N + int(bn[0] + t, 2)
for N in range(3, 1000, 2):
if R(N) > 99:
print(N)
break
Ответ: \(65\)