您的位置:首页 > 其它

LeetCode Weekly Contest 25

2017-03-26 22:24 453 查看

507 Perfect Number

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)

accepted code

class Solution{
public:
bool checkPerfectNumber(int num){
if(num<6)
{
return false;
}
int i,j;
int sum=1;

i=2;
while(sum<=num&&i<num)
{
if(num%i==0)
{
j=num/i;
if(j>i)
{
sum = sum+i+j;
}
else break;
}
i++;
}
if(num==sum)
{
return true;
}
else return false;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  leetcode