Задача к ЕГЭ по информатике на тему «Запись числа в двоичной системе счисления» №3

Исполнитель Олень получает число и строит по нему новое число R  следующим образом:

  1. Строится двоичная запись числа N  .
  2. Вместо последней двоичной цифры дважды записывается вторая слева цифра двоичной записи.
  3. Результат переводится в десятичную систему.

Полученная таким образом запись (в ней на один разряд больше, чем в записи исходного числа N  ) является двоичной записью искомого числа R  .

Укажите такое наименьшее число N  , для которого Олень получит число, большее, чем 177  . В ответе это число запишите в десятичной системе счисления.

Переведем 178 = 101100102  . Последние 2 цифры не совпадают с второй слева цифрой, получается ищем следующее.

Переведем 179 = 10110011              2  . Также не совпадает.

Переведем 180 = 101101002  . Вторая слева и последние 2 совпадают. Обрубаем последние. 1011012  . Сейчас также нам не хватает обрубленной цифры, и чтобы вышло наименьшее N нужно взять 0. 10110102 = 9010  .

Решение №2

for i in range(2, 1000):
    s = bin(i)[2:]
    s = s[:len(s) - 1] + s[1] * 2
    if int(s, 2) > 177:
        print(i)
        break

Ответ: 90
Оцените статью
Я решу все!