Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку , числа, которые в делителях имеют число-палиндром. Программа должна вывести количество таких чисел. Числа-палиндромы — числа, которые читаются одинаково как справа налево, так и слева направо. Минимальная длина числа-палиндрома равна
.
def f(n): # функция для проверки есть ли у числа делитель - палиндром
for x in range(1, int(n ** 0.5) + 1):
if n % x == 0:
if len(str(x)) > 1 and str(x) == str(x)[::-1]:
return True
if x != n // x and len(str(n // x)) > 1 and
str(n // x) == str(n // x)[::-1]:
return True
return False
result = 0
for i in range(11111, 22222 + 1):
if f(i): # проверка есть ли у числа делитель палиндром
result += 1
print(result)
Ответ: 2503