Пусть р и д – простые числа, а их произведение – n.
Условие говорит о том, что (р+1)(д+1) – n = 100.
Раскроем скобки:
рд + р + д + 1 – n = 100.
Разложим n на простые множители:
n = а^x * b^y * c^z * …
Тогда:
(р+1)(д+1) – (а^x * b^y * c^z * …) = 100.
Выразим произведение rd через сумму произведений чисел р и д:
rd = (р + д)(р + д) – р – д.
(поскольку (р + д) * (р + д) = р^2 + 2рд + д^2 и путем вычитания р и д получаем выражение rd)
Таким образом, задачу можно переформулировать следующим образом:
Найти такие два простых числа р и д, что (р + д)^2 – р -д – а^x * b^y * c^z * … = 100.
Решение задачи заключается в переборе всех комбинаций простых чисел р и д и проверке условия (р + д)^2 – р -д = 100 + а^x * b^y * c^z * … на каждой итерации.
Найдя все возможные значения р и д, результат будет произведением наименьших из них.
Используя алгоритм, выше, найдем все комбинации чисел р и д, для которых выполняется условие. Из этих комбинаций выберем наименьшее произведение rd.
Таким образом, мы найдем значение произведения рq, удовлетворяющее условию задачи.