На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
- Строится двоичная запись числа N.
- К этой записи дописываются справа ещё два разряда по следующему правилу:
- складываются все цифры двоичной записи числа N, и остаток от деления суммы на 2 дописывается в конец числа (справа). Например, запись 11100 преобразуется в запись 111001;
- над этой записью производятся те же действия – справа дописывается остаток от деления суммы её цифр на 2.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R.
Укажите минимальное число R, которое превышает число 123 и может являться результатом работы данного алгоритма. В ответе это число запишите в десятичной системе счисления.
Ответ:
ЕГЭ по информатике Основная волна (Сибирь) 19.06.2024 kompege.ru – задание №5
Решение:
Решение на Python — Митаева Зарина Талгатовна
|
1 2 3 4 5 6 7 8 9 |
a = [] for n in range (1,10000): b = bin(n)[2:] b = b + str(b.count('1')%2) b = b + str(b.count('1')%2) r = int(b,2) if r > 123: a.append(r) print(min(a)) |
Ответ: 126
