На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
а) если число N чётно, то к двоичной записи справа дописывается «01»;
б) если число N нечётно, то сумма двух последних двоичных цифр в двоичном виде приписывается справа.
Полученная таким образом запись является двоичной записью искомого числа R.
З. Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 4 = 1002 результатом является число 100012 = 17, а для исходного числа 5 = 1012 это число 10112 = 11.
Укажите число N, после обработки которого с помощью этого алгоритма получается наибольшее число R, не превышающее 529. В ответе запишите это число в десятичной системе счисления.
Ответ:
Прогноз на основную волну КЕГЭ 2024 вариант Марата Ишимова – задание №5
Решение:
Решение на Python — Валеев Амир Ильнарович
|
1 2 3 4 5 6 7 8 9 10 11 12 |
for n in range(2,2000): r = bin(n)[2:] if n % 2 == 0: r += '01' else: s = int(r[-2]) + int(r[-1]) r += bin(s)[2:] ans = int(r,2) if ans <= 529: k += [[ans,n]] k.sort() print(k) |
Ответ: 132
