На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится троичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
а) если число N делится на 3, то к этой записи дописываются две последние троичные цифры;
б) если число N на 3 не делится, то остаток от деления умножается на 5, переводится в троичную запись и дописывается в конец числа.
Полученная таким образом запись является двоичной записью искомого числа R.
З. Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 12 = 1103 результатом является число 110103 = 111, а для исходного числа 4 = 113 результатом является число 11123 = 41.
Укажите максимальное число R, не превышающее 242, которое может быть получено с помощью описанного алгоритма. В ответе запишите это число в десятичной системе счисления.
Ответ:
Всероссийская апробации ЕГЭ 05.03.2024 – задание №5
Решение:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
def troich(n): s='' while n>0: s=str(n%3)+s n=n//3 return s rm=[] for n in range(1,1000): a=troich(n) if n%3==0: a=a+a[-2:] else: a=a+troich((n%3)*5) r=int(a,3) if r<242: rm.append(r) print(max(rm)) |
Ответ: 230
