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