Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Тренировки Пробники Статистика Карточки Учебник Об экзамене Учительская
  • Тренажёр заданий ЕГЭ
  • Тренажёр ЕГЭ по Информатике
  • Список заданий №5
  • Задание №5
  • Задание №83045 ЕГЭ Информатике

    Условие задания #83045

    №5 по КИМ

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

    1. Число N переводим в двоичную запись.
    2. Циклически сдвигаем все его биты вправо на расстояние равное остатку от деления на 5 исходного числа N (Последние биты передвигаются в начало).
    3. Переводим в десятичную запись.
    Пример. Дано число 21. Оно преобразуется следующим образом:

    21 → 101012 → 110102 → 26.

    Полученное число является искомым числом R.

     

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

    Ответ

    Ответ:

    719

    Решение

    for n in range(10000):
        r = bin(n)[2:]
        rlist = [int(x) for x in r]
        newr = [0]*len(r)
        for i in range(len(rlist)):
            newr[(i+n%5)%len(rlist)] = rlist[i]
        newr = ''.join([str(x) for x in newr])
        if int(newr, 2) > 1000:
            print(n)
            break

    Видеоразбор:

    Понятно ли решение?

    Похожие задания

    15
    Задание №72807Задание №41422Задание №41421Задание №41418Задание №41417Задание №41416Задание №84553Задание №84554Задание №84555Задание №84557Задание №41404Задание №45477Задание №41402Задание №41401Задание №41399
    Бесплатно

    Решай задачи ЕГЭ в приложении

    Скачивай наш Тренажер ЕГЭ на iPhone или Android и тренируйся в любое время и в любом месте!

    Саша — ассистент в телеграмме