Число называется избыточным, если оно строго меньше суммы своих собственных делителей (то есть всех положительных делителей, отличных от самого числа). Определите количество избыточных чисел из диапазона [5; 50000].
ans = 0
for i in range(5, 50000+1):
dels = [1] # список, в котором будут храниться делители числа, отличные от самого числа
for j in range(2, int(i**0.5)+1):
if i % j == 0:
dels += [j]
if j != i//j:
dels += [i//j]
if sum(dels) > i:
ans += 1
print(ans)
Ответ: 12394