Среди целых чисел, принадлежащих числовому отрезку , найдите числа, среди нетривиальных делителей которых есть ровно
двузначных чисел. Для каждого найденного числа запишите в ответе само число, наименьший и наибольший из его двузначных делителей через пробел. Так, например, для числа
учитываются только делители
и
.
def count_del(x): # функция, которая возращает список двухзначных делителей
ans = []
for i in range(2, int(x ** 0.5) + 1):
if x % i == 0:
if len(str(i)) == 2: # проверка, что делитель - двухзначный
ans += [i]
if i != x // i:
if len(str(x // i)) == 2:
ans += [x // i]
return sorted(ans)
for i in range(333555, 777999 + 1):
d = count_del(i)
if len(d) == 38:
print(i, d[0], d[-1])
Ответ: 360360 10 99 776160 10 99