Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 5. Информатика. ЕГЭ. Основная волна. 10.06.2025
- Просмотры: 1814
- Изменено: 10 июня 2025
На вход алгоритма подаётся натуральное число \(N.\) Алгоритм строит по нему новое число \(R\) следующим образом.
- Строится троичная запись числа \(N.\)
- Далее эта запись обрабатывается по следующему правилу:
- а) если число \(N\) делится на \(3,\) то к этой записи дописывается справа две последние цифры троичной записи;
- б) если число \(N\) не делится на \(3,\) то остаток от деления умножается на \(5,\) переводится в троичную запись и дописывается в конец числа.
- Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа \(12 = 110_3,\) результатом является число \(11010_3 = 111,\) а для исходного числа \(4 = 11_3,\) остаток от деления на \(3\) равен \(1,\) \(1 \cdot 5 = 5,\) в троичной записи \(5 = 12_3,\) результат: \(1112_3 = 41.\)
Укажите наименьшее число \(N,\) после обработки которого с помощью этого алгоритма получается число \(R,\) не меньшее чем \(290.\) В ответе запишите это число в десятичной системе счисления.
Решение:
Python
def conv(n):
alph = '012'
ans = ''
while n:
ans = alph[n % 3] + ans
n //= 3
return ans
def R(N):
tr = conv(N)
if N % 3 == 0:
tr += tr[-2:]
else:
tr += conv(N % 3 * 5)
return int(tr, 3)
#print(R(12), R(4))
print(min(N for N in range(4, 300) if R(N) >= 290))
Ответ: \(11\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


