Complete number calculation [Python]

Title description

Perfect numbers, also known as perfect numbers or perfect numbers, are some special natural numbers. The sum (that is, the factor function) of all its true factors (that is, divisors other than itself) is exactly equal to itself. For example: 28, it has round numbers 1, 2, 4, 7, 14, and 28. Except for 28 itself, add the other 5 numbers, 1+2+4+7+14=28. Given function count(int n), it is used to calculate the number of perfect numbers within n (including n). Calculation range, 0 <n <= 500000

Returns the number of complete numbers within n. Exception returns -1


Code 1:

number = int(input())  
while True:
    try:    
        result = []    
        while number > 1:
            res = []   
            for num in range(1, number//2 + 1):
                if number % num == 0:
                    res.append(num)
            if sum(res) == number:
                result.append(number)
            number -= 1

        print(len(result))
    except:
        break
print(-1)

Time limit exceeded

Code 2:

while True:
    try:
        m = int(input())
        print(len(list(filter(lambda x: x < m, [6, 28, 496, 8128]))))
    except:
        break

Guess you like

Origin blog.csdn.net/weixin_43283397/article/details/108356810