Решение: Палиндромы суммы делителей
Пусть $M$ — сумма минимального и максимального простых натуральных делителей целого числа, не считая самого числа. Если таких делителей у числа нет, то значение $M$ считается равным нулю.
Напишите программу, которая перебирает целые числа, большие $5\,100\,000$, в порядке возрастания и ищет среди них такие, для которых $M$ больше $50\,000$ и является палиндромом, то есть одинаково читается слева направо и справа налево.
В ответе запишите первые пять найденных чисел в порядке возрастания, а также соответствующие им значения $M$. Например, для числа $298$ значение $M = 2 + 149 = 151$.
Решение по шагам
4 шагаПеребираем числа, начиная с $5\,100\,001$, пока не будут найдены пять подходящих чисел.
$$n = 5\,100\,001, 5\,100\,002, \ldots$$Для каждого числа раскладываем его на простые множители. Минимальный и максимальный простые множители обозначим $p_{\min}$ и $p_{\max}$.
$$M = p_{\min} + p_{\max}$$Оставляем только числа, для которых $M > 50\,000$ и запись $M$ совпадает с записью числа $M$ справа налево.
$$\operatorname{str}(M) = \operatorname{str}(M)[::-1]$$Первые пять подходящих чисел записываем в таблицу в порядке возрастания.
Получить первые пять пар программным перебором чисел, начиная с 5 100 001.
Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Учитывают само число как его простой делитель.
Ищут минимальный и максимальный делители, а не простые делители.
Проверяют палиндромность самого числа вместо значения M.
Начинают перебор с 5 100 000, хотя требуется число, большее этого значения.