class Solution {
public:
bool checkPerfectNumber(int num) {
}
};
507. 完美数
对于一个 正整数,如果它和除了它自身以外的所有 正因子 之和相等,我们称它为 「完美数」。
给定一个 整数 n
, 如果是完美数,返回 true
;否则返回 false
。
示例 1:
输入:num = 28 输出:true 解释:28 = 1 + 2 + 4 + 7 + 14 1, 2, 4, 7, 和 14 是 28 的所有正因子。
示例 2:
输入:num = 7 输出:false
提示:
1 <= num <= 108
相似题目
原站题解
golang 解法, 执行用时: 0 ms, 内存消耗: 1.9 MB, 提交时间: 2021-06-21 14:30:17
func checkPerfectNumber(num int) bool { ans := 1 if num < 5 { return false } i := 0 for i = 2; i*i < num; i++ { if num % i == 0 { fmt.Println(i, num/i) ans += i + num/i } } if i * i == num { ans += i } return ans == num }