На вход алгоритма подается натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится троичная запись числа N.
2. Если N
3. Если N
Полученная таким образом запись является троичной записью искомого числа R.
Укажите максимальное число R,
Приведём решение на языке 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))
Ответ: 162.

