ЕГЭ, ОГЭ, программирование и робототехника в Калининграде

№ 5045. ЕГКР 2026

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

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

Например, для исходного числа 810 = 223 результатом является число 221103 = 22810, а для исходного числа 910 = 1003 это число 100003 = 8110

Укажите минимальное нечётное число R, большее 208, которое может быть получено с помощью описанного алгоритма.

В ответе запишите это число в десятичной системе счисления.

def to_ternary(num):
    result = ''
    while num:
        result += str(num % 3)
        num //= 3
    return result[::-1]


for N in range(1, 300):
    N_tern = to_ternary(N)

    remainder = N % 3
    if remainder == 0:
        N_tern += N_tern[-2:]
    else:
        sum_d = sum(map(int, N_tern))
        N_tern += to_ternary(sum_d * 3)
    R = int(N_tern, 3)
    if R > 208 and R % 2:
        print(R)
        break
Разберём это задание на бесплатном пробном занятии

Преподаватель покажет, как решать такие задачи, и подскажет, с чего начать подготовку. Группы до 8 человек, очно в Калининграде и онлайн.

Записаться на пробное занятие