Задача типа #5: Анализ алгоритма для Исполнителя
Анализ алгоритма для Исполнителя
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
- Строится двоичная запись числа N.
- Далее эта запись обрабатывается по следующему правилу:
– если число N делится на 3, то к этой записи дописываются три последние двоичные цифры;
– если число N на 3 не делится, то остаток от деления умножается на 3, переводится в двоичную запись и дописывается в конец числа.
Полученная таким образом запись является двоичной записью искомого числа R. - Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 1210 = 11002 результатом является число 11001002 = 10010, а для исходного числа 410 = 1002 это число 100112 = 1910. Укажите максимальное число N, после обработки которого с помощью этого алгоритма получается число R, меньшее 130.
Укажите такое наименьшее число N, для которого результат работы алгоритма больше числа 253.
В ответе запишите это число в десятичной системе счисления.
Ответ:
31
Алгоритм решения: Перебираем числа в указанном диапазоне, проверяем на условия, используем срезы (например, n[] в Python) для замены символов.
Возможно другое решение.
Алгоритм решения: Перебираем числа в указанном диапазоне, проверяем на условия, используем срезы (например, n[] в Python) для замены символов.
Возможно другое решение.
Посмотреть решение задачи (код на Python) в Telegram боте по ID задачи 105009