Задача №5 из ЕГЭ по информатике представлена следующими возможными типажами:
🧮 двоичная система счисления
🧮 десятичная система счисления
🧮 двоично-десятичная система счисления
🧮 другие системы счисления
Рассмотрим пример задачи из сборника ФИПИ 2026.
Классическое решение выглядит следующим образом:
Задача №5 из ЕГЭ по информатике: разбор
А теперь рассмотрим решение для крутых более элегантный способ решения.
Создание списка цифр числе через списочное выражение:
digits = [int(x) for x in str(K)]
Список из P1 и P2 без использования лишних переменных и сразу в строковом виде
[str(sum(digits) - max(digits)), str(sum(digits) - min(digits))]))
т.е. для примера из задачи в этом списке находятся ['7', '12']
Отсортируем этот список, чтобы числа были записаны в порядке неубывания:
sorted([str(sum(digits) - max(digits)), str(sum(digits) - min(digits))])
Объединим две строки из списка в единую строку с помощью метода join.
''.join(sorted([str(sum(digits) - max(digits)), str(sum(digits) - min(digits))]))
Тогда итоговый код выглядит так:
Вдохновляйтесь! Обучайтесь! Пишите красивый код!