Задание №5 ЕГЭ Информатика с ответом и решением
Ответ: 82
Условие
Автомат обрабатывает натуральное число N по следующему алгоритму:
1. Строится двоичная запись числа N без ведущих нулей.
2. Если в полученной записи единиц больше, чем нулей, то справа приписывается единица. Если нулей больше или нулей и единиц поровну, справа приписывается ноль.
3. Полученное число переводится в десятичную запись и выводится на экран.
Пример. Дано число N = 13. Алгоритм работает следующим образом.
1. Двоичная запись числа N: 1101.
2. В записи больше единиц, справа приписывается единица: 11011.
3. На экран выводится десятичное значение полученного числа 27.
Какое наименьшее число, превышающее 80, может получиться в результате работы автомата?
Подсказки — как подойти к решению
- Иди от порога вверх: переводи числа в двоичную запись и смотри на последнюю цифру — она должна быть такой, какую правило предписало бы по количеству единиц и нулей в оставшейся части записи.
- Помни, что запись строится без ведущих нулей, поэтому сравнение «единиц больше, чем нулей» считается по фактической записи числа. Отбрасывай последнюю цифру и проверяй, какая цифра должна была быть приписана.
Решение
Рассмотрим числа, большие 80, и найдем минимальное число, которое является результатом работы алгоритма.
8110 = 10100012 — не может являться результатом работы алгоритма.
8210 = 10100102 — является результатом работы алгоритма.
Ответ: 82.
Приведём другое решение на языке Python.
for n in range(1, 100):
s = bin(n)[2:] # перевод в двоичную систему
s = str(s)
s = s[s.find('1'):]
if s.count('1') > s.count('0'):
s += '1'
else:
s += '0'
r = int(s, 2) # перевод в десятичную систему
if r > 80:
print(r)
break
Типичные ошибки
- Похоже, ты решил, что подойдёт первое число после порога, но его хвост не согласуется с правилом. Для каждого кандидата отбрасывай последнюю цифру и проверяй, какую цифру должно было приписать правило, включая случай равенства.
В тренажёре: подсказки по шагам, разбор твоей ошибки ИИ-репетитором (он не даёт готовый ответ), повторение ошибок по интервалам и общий прогресс. Все задания №5 по информатике