Найдите все натуральные числа, принадлежащие числовому отрезку [335235; 337235] и имеющие ровно 12 нетривиальных делителей.
Для каждого найденного числа запишите эти 12 делителей на экране, отделенные от друг друга ровно одним пробелом. Делители в строке должны следовать в порядке возрастания.
def count_div(x):
ans = []
for i in range(2, int(x**0.5)+1):
if x % i == 0:
ans += [i]
if x != x // i:
ans += [x // i]
if len(ans) > 12:
return ans
return ans
for i in range(335235, 337235+1):
if len(count_div(i)) == 12:
print(*sorted(count_div(i)))
ans = []
for i in range(2, int(x**0.5)+1):
if x % i == 0:
ans += [i]
if x != x // i:
ans += [x // i]
if len(ans) > 12:
return ans
return ans
for i in range(335235, 337235+1):
if len(count_div(i)) == 12:
print(*sorted(count_div(i)))
Ответ: 3 9 27 81 243 461 729 1383 4149 12447 37341 112023 2 4 8 16 32 64 5261 10522 21044 42088 84176 168352