Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 5. Информатика. ЕГЭ. Поляков-8398
- Просмотры: 2489
- Изменено: 27 декабря 2025
(В. Лашин) На вход алгоритма подается натуральное число \(N.\) Алгоритм строит по нему новое число \(R\) следующим образом:
- Строится троичная запись числа \(N.\)
- Далее эта запись обрабатывается по следующему правилу:
- а) если сумма цифр троичной записи числа кратна \(9,\) то к этой записи справа дописывается цифра \(2;\)
- б) если сумма цифр троичной записи числа не кратна \(9,\) то к этой записи справа дописывается троичная запись остатка от деления суммы цифр записи на \(9.\)
Полученная таким образом запись является троичной записью искомого числа \(R.\) Например, для исходного числа \(9 = 100_3\) результатом является число \(1001_3 = 28.\) А для исходного числа \(161 = 12222_3\) результатом является число \(122222_3 = 485.\) Укажите минимальное число \(R,\) которое может быть результатом работы данного алгоритма, при условии, что \(N\) больше \(166.\) В ответе запишите это число в десятичной системе счисления.
Решение:
Python
def conv(n):
alph='012'
ans = ''
while n:
ans = alph[n % 3] + ans
n //= 3
return ans
def R(N):
tr = conv(N)
s = sum(int(x) for x in tr)
tr += '2' if s % 9 == 0 else conv(s % 9)
return int(tr, 3)
#print(R(9), R(161))
print(min(R(x) for x in range(167, 1000)))
Ответ: \(647\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


