Задание 5. Информатика. ЕГЭ. Шастин. 30.11.2024
- Просмотры: 339
- Изменено: 26 декабря 2024
(Л. Шастин) На вход алгоритма подаётся натуральное число \(N\). Алгоритм строит по нему новое число \(R\) следующим образом.
- Строится четверичная запись числа \(N\).
- Далее эта запись обрабатывается по следующему правилу:
- если число \(N\) делится на \(4\), то слева к четверичной записи приписывается «2», а справа «03».
- если число \(N\) на \(4\) не делится, то остаток от деления на \(4\) умножается на \(5\), переводится в четверичную запись и дописывается в конец четверичной записи.
- Результат переводится в десятичную запись и выводится на экран.
Например, для исходного числа \(11 = 23_4\) результатом является число \(2333_4 = 191.\)
Укажите максимальное число \(N\), после обработки которого с помощью этого алгоритма получается число \(R\), не превышающее \(567.\)
Решение:
Python
def conv(N):
ans = ''
while N:
ans = str(N % 4) + ans
N //= 4
return ans
def R(N):
s = conv(N)
if N % 4 == 0:
s = '2' + s + '03'
else:
s += str(conv(N % 4 * 5))
return int(s, 4)
a = [N for N in range(10, 570) if R(N) < 568]
print(max(a))
Ответ: \(34\)