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

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

Если N не кратно 3, то остаток от деления умножается на 5, переводится

Условие

На вход алгоритма подается натуральное число N. Алгоритм строит по нему новое число R следующим образом.1. Строится троичная запись числа N.2. Если N кратно 3, то в конец записи дописываются две последние троичные цифры.3. Если N не кратно 3, то остаток от деления умножается на 5, переводится в троичную систему и затем дописывается к числу.

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

Ответ

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

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

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

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

    Решение. Приведём решение на языке Python. def f(n): s='' while n > 0: s = str(n%3)+s n //= 3 return s c = set()for n in range(1,100): s = f(n) if n%3 == 0: s = s + s[-2:] else: s = s + f((n%3)*5) r = int(s,3) if r <= 173: c.add(r)print(max(c))

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

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

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

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

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