ЕГЭ Информатика 2024: Разбор 25 задания (маски чисел)

Задание высокого уровня сложности, проверяющее умение создавать программы для обработки целочисленной информации. На его выполнение отводится 20 минут.

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

Условие задачи включает «маску числа» – последовательность цифр, содержащую специальные символы:

  • ? – обозначает ровно одну произвольную цифру.
  • * – обозначает любую последовательность цифр произвольной длины, включая пустую последовательность.

Необходимо найти все натуральные числа, не превышающие 10<sup>10</sup>, соответствующие данной маске и делящиеся на 2024 без остатка. Результат должен содержать найденные числа в порядке возрастания, а также результат деления каждого числа на 2024.

Решение задачи

Предлагается использовать итеративный подход без дополнительных модулей.

  1. Перебор чисел: Перебор осуществляется с шагом 2024, начиная с 2024: range(2024, 10**10 + 1, 2024). Это гарантирует, что рассматриваются только числа, кратные 2024.
  2. Преобразование в строку: Каждое число преобразуется в строку для удобного доступа к отдельным цифрам.
  3. Проверка соответствия маске: Проверка осуществляется посимвольно.
  4. Вывод результата: Для каждого числа, удовлетворяющего условиям, выводится само число и результат целочисленного деления на 2024.

Пример кода (фрагмент)

В коде используется проверка:

  • str(number)[0] == ‘1’ – проверка первого символа.
  • str(number)[1:5] == ‘2157’ – проверка символов со второго по пятый.
  • str(number)[-1] == ‘4’ – проверка последнего символа.

Предложенный алгоритм позволяет эффективно найти все числа, удовлетворяющие условиям задачи. Результат может быть проверен путем сравнения с ответами в демоверсии ЕГЭ.

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