На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится троичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
а) если число N делится на 3, то к этой записи справа дописываются две последние троичные цифры;
б) если число N на 3 не делится, то вычисляется сумма цифр полученной троичной записи, эта сумма умножается на 2, переводится в троичную систему счисления и дописывается в конец числа.
Полученная таким образом запись является троичной записью искомого числа R.
3. Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 810 = 223 результатом является число 22223 = 8010, а для исходного числа 910 = 1003 это число 100003 = 8110
Укажите минимальное нечётное число R, большее 520, которое может быть получено с помощью описанного алгоритма.
В ответе запишите это число в десятичной системе счисления.
Ответ:
ЕГКР по информатике 18 апреля 2026 – задание №5
Решение:
Решение на Python —
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
def t(n): s='' while n>0: s=str(n%3)+s n=n//3 return s for n in range(1, 1000): b=t(n) if n%3==0: b = b + b[-2:] else: s=b.count('1')+b.count('2')*2 b = b + t(s*2) r=int(b,3) if r%2!=0 and r>520 and r<600: print(r) |
567
597
Ответ: 567
