牛客华为HJ56完全数计算 发表于 2022-11-11 分类于 leecode刷题复习 这是文章开头,显示在主页面,详情请点击此处。 123456789101112n = int(input())num_list = []for num in range(2,n+1): # 1 不属于完全数。这是常识定义。 sum_ = 0 for i in range(1,int((num)**0.5) +1): # 只需要算到 根号+1 位置即可。 if num%i == 0: # 因数 注定是成对出现 sum_ += i sum_ += num//i if sum_ == 2*num: num_list.append(num) # print(num)print(len(num_list))