На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Число N переводим в двоичную запись.
2. Инвертируем все биты числа кроме первого.
3. Переводим в десятичную запись.
4. Складываем результат с исходным числом N.
Полученное число является искомым числом R.
Укажите наименьшее нечетное число N, для которого результат работы данного алгоритма больше 85. В ответе это число запишите в десятичной системе счисления.
a = []
for n in range(1000):
r = bin(n)[2:]
first = r[0]
r = r[1:]
r = r.replace(’0’, ’*’)
r = r.replace(’1’, ’0’)
r = r.replace(’*’, ’1’)
r = first + r
rez = int(r, 2) + n
if n % 2 != 0 and rez > 85:
a.append(n)
print(min(a))
Ответ: 33