题解 | 完全数计算
完全数计算
https://www.nowcoder.com/practice/7299c12e6abb437c87ad3e712383ff84
# 怎么求一个数的所有约数?
def get_divisor(num):
divisor = [] # 存储真因子
for i in range(1, num): # 如何优化算法,步长step=?
if num % i == 0: # 满足约数的条件
divisor.append(i)
return divisor
n = int(input())
count = 0 # 完全数的个数
if n == 1: # 边界值1不是完全数
print(count)
elif n > 1:
for i in range(1, n + 1):
# 判断完全数
if sum(get_divisor(i)) == i:
count += 1
print(count)
美的集团公司福利 727人发布