Задача #6597
Делители и маски
(PRO100 ЕГЭ) Найдите все натуральные числа, принадлежащие отрезку [1 000 000 000 ; 2 000 000 000], у которых больше 100 различных нечётных делителей, количество чётных делителей может быть любым. И при этом число должно делиться на каждое из чисел: 7, 13, 17, 23, 29, но не делиться ни на 3, ни на 5. В ответе запишите количество подходящих чисел.
Войдите, чтобы история ответов и статистика сохранялись.
Решение
Ответ
73
Видео по задаче
def div(x):
d = set()
for i in range(1, int(x**0.5)+1):
if x%i==0:
d|={i,x//i}
return sorted(d)
count = 0
#границы range определены предварительным делением границ отрезка на 7*13*17*23*29
for i in range(970,1938+1):
if i%3!=0 and i%5!=0:
x = i * 7*13*17*23*29
d = [i for i in div(x) if i%2!=0]
if len(d)>100:
count += 1
print(count)