Автомат Информатик обрабатывает натуральное число N по следующему алгоритму:
1) Строится двоичная запись числа N.
2) К этой записи дописывается еще два разряда справа по следующим правилам:
а) Ставится бит четности, т.е. если сумма цифр в двоичной записи четная, то ставится 0, иначе — 1
б) Ставится цифра, отличная от предыдущей.
3) Полученное число переводится в десятичную запись и выводится на экран.
Укажите минимальное число N, результатом обработки которого станет число, превышающее 90?
for n in range(1,1000):
t = bin(n)[2:]
if t.count(’1’) % 2 == 0:
t += ’01’
else:
t += ’10’
r = int(t,2)
if r > 90:
print(n)
break
Ответ: 23