描述

完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。

它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。

例如:28,它有约数12471428,除去它本身28外,其余5个数相加,1+2+4+7+14=28

输入n,请输出n以内(n)完全数的个数。

数据范围: 1 \le n \le 5 \times 10^{5} \1n5×105 

本题输入含有多组样例。

输入描述:

输入一个数字n

输出描述:

输出不超过n的完全数的个数

示例1

输入:
1000
7
100
复制
输出:
3
1
			
2
while True:
    try:
        n=int(input())
        sum2=0
        list_s2=[]
        for i in range(2,n+1):
            sum1=1
            list_s1=[]
            for j in range(2,int(i//2)):
                if i%j==0:
                    list_s1.append(j)
                    list_s1.append(int(i//j))
            if i==sum(set(list_s1))+1:
                list_s2.append(i)
        print(len(list_s2))
    except:
        break