№ 5427 Джобс 21.12.22 (Уровень: Базовый)

Разбор 5.PNG

Автомат обрабатывает натуральное число N по следующему алгоритму:

1.     Из числа N вычитается количество нулей в двоичной записи числа N.

2.     Строится двоичная запись полученного числа.

3.     К полученной записи слева дописывается три младших разряда.

4.     Результат переводится в десятичную систему и выводится на экран.

Пример. Дано число N = 13. Алгоритм работает следующим образом:

1.     Двоичная запись числа N: 1101. 13 – 1 = 12

2.     12_10 = 1100_2

3.     1100_2 -> 1001100.

4.     1001100_2 = 76

Какое наименьшее число, большее 224, может появиться на экране в результате работы автомата?

Untitled

Комментарии к решению:

  1. M = [] - создаем пустой список M.
  2. for n in range(1, 1000): - начинаем цикл, перебирая значения переменной n от 1 до 999.
  3. s = bin(n)[2:] - преобразуем текущее значение n в двоичную строку и сохраняем ее в переменную s.