Fork me on GitHub

507.完美数

题目描述

对于一个 正整数,如果它和除了它自身以外的所有正因子之和相等,我们称它为“完美数”。

给定一个 正整数 n, 如果他是完美数,返回 True,否则返回 False

示例:

输入: 28
输出: True
解释: 28 = 1 + 2 + 4 + 7 + 14

解决方案

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Solution {
public:
bool checkPerfectNumber(int num) {
int result = 1;
for(int i=2;i*i<=num;++i)
{
if(num % i == 0){
result += i;
if(i*i != num){
result += num / i;
}
}
}
return result != 1 && result == num;
}
};

本文标题:507.完美数

文章作者:LiuXiaoKun

发布时间:2019年03月20日 - 21:03

最后更新:2019年03月20日 - 21:03

原始链接:https://LiuZiQiao.github.io/2019/03/20/507-完美数/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

0%