Статья Автор: Лебедев Дмитрий Алексеевич

Задачи типа КЕГЭ-25 с решетом Эратосфена

Для решения заданий типа КЕГЭ-25 можно вначале построить необходимое множество простых чисел, а затем использовать его
  1. Построение множества простых чисел лучше всего реализовать построением решета Эратосфена
  2. Для решения заданий для чисел нужно находить  различные характеристики:
    • количество делителей
    • сумму делителей
    • минимальный и максимальный делитель
    • простые делители числа
    • и т.п.
Приведем основные подпрограммы (без излишней оптимизации), а затем  рассмотрим подход на примере решения задания одного из вариантов апрельской ЕГКР (2026 года)  


Задание для разбора
Напишите программу, которая перебирает целые числа, большие 8 568 641, в порядке возрастания и ищет среди них числа, представленные в виде произведения ровно двух простых множителей, не обязательно различных, каждый из которых содержит в своей записи ровно две цифры 1.
В ответе в первом столбце таблицы запишите первые 5 найденных чисел в порядке возрастания, а во втором столбце - для каждого из чисел соответствующий им наибольший из найденных множителей.
Количество строк в таблице для ответа избыточно.

Задание можно решить двумя "подходами"
  1. Перебор чисел больших заданного и проверка на удовлетворение условиям
  2. Моделирование: отбираем подходящие простые, формируем список попарных произведений и берем минимальные
Реализуем оба подхода. Предположим, что искомые числа не будут превышать 9_000_000 (это очень грубая оценка, если не будет достаточной, то увеличим). Итак
  • определим отрезок [A,B]
  • развернем решето до B (чтобы можно было и простые отлавливать)
  • далее в зависимости от подхода

Для эффективного использования лучше применять подпрограмму fact_ (это просмотр простых делителей "до корня")
На данной задаче выигрыш более чем в 50 раз ( здесь решение с fact_ занимает менее 5 сек, а использование fact результата не дает и при лимите в 100 сек)


При решении методом моделирования можно использовать генераторы (это упрощает код)
Видим, что метод моделирования для данной задачи более эффективен


Ниже приведен список задач, на которых можно проверить данный подход
  1. Задание 25-202601. Сумма крайних делителей: M оканчивается на 6 и кратно 7
  2.  Задание 25-202602. Сумма всех нетривиальных делителей — точный квадрат
  3. Задание 25-202603. Разность чётных и нечётных делителей
  4.  Задание 25-202604. Произведение двух простых, каждый содержит ровно одну цифру 7
  5. Задание 25-202607. Сумма простых делителей — палиндром
  6. Задание 25-202608. Восьмеричный вес 24 и ровно 4 делителя
  7. Задание 25-202609. Произведение трёх простых, оканчивающихся на одну цифру
  8. Задание 25-202610. Точные четвёртые степени с тремя нетривиальными делителями
  9. Задание 25-202611. Сумма чётных делителей: M на 0, чётных делителей > 6
  10. Задание 25-2026012. Числа с ровно 12 делителями в [185 000; 185 100]
  11. Задание 25-202613. M оканчивается на 8, сумма цифр n кратна 7
Разбор заданий можно посмотреть в  КЕГЭ-25. Решаем с помощью решета Эратосфена
Печать