На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. К этой записи дописываются справа ещё два разряда по следующему правилу: складываются все цифры двоичной записи, если
а)сумма нечетная к числу дописывается 11,
б)сумма четная, дописывается 00.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R. Укажите такое наименьшее число N, при котором результатом программы будет число, которое превышает 201. В ответе это число запишите в десятичной системе счисления.
for number in range(1000):
binary_number = bin(number)[2:]
if binary_number.count(’1’) % 2 == 0:
binary_number += ’00’
else:
binary_number += ’11’
decimal_result = int(binary_number, 2)
if decimal_result > 201:
print(number)
break
Ответ: 50