LeetCode : Perfect Number
2017-04-13 20:41
288 查看
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
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
class Solution { public: bool checkPerfectNumber(int num) { if(num==1) return false; int sum = 1; for(int i=2;i*i<=num;++i){ if(num%i==0) { sum+=(i+num/i); } if(i*i==num) sum-=i; if(sum>num) return false; } return sum==num; } };
相关文章推荐
- leetcode[Perfect Number]
- leetcode507: Perfect Number
- [LeetCode] Perfect Number 完美数字
- Leetcode 507 Perfect Number
- LeetCode 507 Perfect Number(完美数字)
- 【LeetCode】Perfect Number 解题报告
- LeetCode 507---Perfect Number
- LeetCode Path Sum II
- 【LeetCode】Remove Duplicates from Sorted List
- Leetcode: Text Justification
- [LeetCode] Climbing Stairs [24]
- Leetcode Max Points on a Line 解题报告
- [C++]LeetCode: 2 Remove Duplicates from Sorted Array
- [LeetCode]151 Reverse Words in a String
- [LeetCode]Largest Number
- LeetCode: Reverse Bits
- LeetCode——Pascal's Triangle
- [LeetCode] Largest Rectangle in Histogram
- LeetCode -- Nim Game
- Leetcode Reverse Integer