관리 메뉴

솜씨좋은장씨

[leetCode] 507. Perfect Number (Python) 본문

Programming/코딩 1일 1문제

[leetCode] 507. Perfect Number (Python)

솜씨좋은장씨 2020. 6. 22. 21:18
728x90
반응형

We define the Perfect Number is a positive integer that is equal to the sum of all its positive divisors except itself.Now, given an integer n, write a function that returns true when it is a perfect number and false when it is not.

 

Example:

Input: 28
Output: True
Explanation: 28 = 1 + 2 + 4 + 7 + 14

Note: The input number n will not exceed 100,000,000. (1e8)

 

Solution

import math 

class Solution(object):
    def checkPerfectNumber(self, num):
        
        if num <= 1: 
            return False
        my_sum = 1
        for i in range(2, int(math.sqrt(num) + 1)):
            if num % i == 0:
                my_sum = my_sum + i + num / i
        return num == my_sum

 

 

SOMJANG/CODINGTEST_PRACTICE

1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.

github.com

 

Comments