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

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

N. Алгоритм строит по нему новое число R следующим образом.1. Строится

Условие

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.1. Строится двоичная запись числа N.2. Далее эта запись обрабатывается по следующему правилу:а) если число N делится на 3, то в этой записи дописываются справа три последние двоичные цифры;6) если число N на 3 не делится, то остаток от деления умножается на 3, переводится в двоичную запись и дописывается в конец числа.

Полученная таким образом запись является двоичной записью искомого числа R.3. Результат переводится в десятичную систему и выводится на экран.

Например, для исходного числа 12 = 1100₂ результатом является число 1100100₂ = 100, а для исходного числа 4 = 100₂ результатом является число 10011₂ = 19.Укажите максимальное число R, не превышающее 137, которое может быть получено с помощью описанного алгоритма. В ответе запишите это число в десятичной системе счисления.

Ответ

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

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

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

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

    Решение. Приведём решение на языке Python. for n in range(1000, 0, -1): s = bin(n)[2:] # перевод в двоичную систему if n % 3 == 0: s += bin(n)[-3:] else: s += bin((n%3)*3)[2:] r = int(s,2) if r <= 137: print(r) break

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

  1. Приведём решения Сергея Донец на…

  2. and (r > maxR) then maxR :=…

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

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

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

N. Алгоритм строит по нему новое число R следующим образом.1. Строится — решение с объяснением | Lom Ai