ЕГЭ Информатика 2025: Задача 8 — подробное решение

Задание базового уровня, на выполнение отводится 4 минуты. Оно проверяет знание основных понятий и методов измерения количества информации.

Условие задачи

Определите количество двенадцатеричных пятизначных чисел, в записи которых ровно одна цифра 7 и не более трёх цифр со значением, превышающим 8.

Решение на языке Python

Для решения задачи воспользуемся языком программирования Python и встроенным модулем itertools.

from itertools import product

k = 0
for w in product('0123456789AB', repeat=5):
    w = ''.join(w)
    if w[0] != '0' and w.count('7') == 1 and len([digit for digit in w if digit in '9AB']) <= 3:
        k += 1

print(k)

Разбор кода

  1. Импорт модуля: from itertools import product импортирует функцию product для генерации декартовых произведений.
  2. Инициализация счётчика: k = 0 инициализирует переменную k для подсчёта подходящих чисел.
  3. Генерация чисел: for w in product(‘0123456789AB’, repeat=5): цикл перебирает все возможные пятизначные двенадцатеричные числа. ‘0123456789AB’ — алфавит двенадцатеричной системы счисления, repeat=5 задаёт длину чисел (5 знаков).
  4. Проверка условий:

    • w[0] != ‘0’: проверяет, что первое число не равно нулю (исключение незначащих нулей).
    • w.count(‘7’) == 1: проверяет, что в числе ровно одна семёрка.
    • len([digit for digit in w if digit in ‘9AB’]) <= 3: проверяет, что количество цифр, больших 8 (9, A, B), не превышает трёх. Список [digit for digit in w if digit in ‘9AB’] создаётся с помощью list comprehension, отбирая цифры, большие 8. Функция len() считает длину этого списка.
  5. Увеличение счётчика: k += 1 увеличивает счётчик k для каждого числа, удовлетворяющего условиям.
  6. Вывод результата: print(k) выводит итоговое количество подходящих чисел.

Результат

Запуск кода даёт ответ: 6747.

Что будем искать? Например,программа