Присоединиться

11 класс·средний уровень

Сколько разных значений будет показано на экране автомата при

Условие

Автомат обрабатывает натуральное число N по следующему алгоритму.1. Строится двоичная запись числа N.2. Удаляется первая слева единица и все следующие непосредственно за ней нули. Если после этого в числе не остаётся цифр, результат этого действия считается равным нулю.3. Полученное число переводится в десятичную запись.4. Новое число вычитается из исходного, полученная разность выводится на экран. Пример. Дано число N = 11. Алгоритм работает следующим образом.1. Двоичная запись числа N: 1011.2. Удаляется первая единица и следующий за ней ноль: 11.3. Десятичное значение полученного числа 3.4. На экран выводится число 11 - 3 = 8. Сколько разных значений будет показано на экране автомата при последовательном вводе всех натуральных чисел от 100 до 3000?

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

Решение по шагам

  1. Как рассуждать

    Решение. Заметим, что при удалении первой единицы и всех стоящих сразу за ней нулей из числа вычитается 2 в степени, равной номеру старшего разряда в двоичной записи числа. Значит, нужно найти количество степеней двойки, которые находятся между 100 и

Осталось ещё 3 шага

  1. Также необходимо учесть, что числа от 100 до…

  2. Примечание. Заметим, что при вводе числа…

  3. if x - i not in a: a.append(x-i)print(len(a))…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Анализ и построение алгоритмов для исполнителей»