0507. Perfect Number

0507. Perfect Number #

题目 #

  • 对于一个 正整数,如果它除了和它自身以外的所有 正因子 之和相等,称它为 「完美数」
  • 给定一个 整数 n,如果是完美数,返回 true;否则返回 false

思路 #

模拟 #

代码 #

模拟 #

class Solution {
    public boolean checkPerfectNumber (int num) {
        if (num == 1) return false;
        int sum = 1;
        for (int i = 2; i < Math.sqrt((double) num); i++) {
            if (num % i == 0) {
                sum += i == num / i ? i : i + num / i;
            }
        }
        return sum == num;
    }
}

致谢 #

宫水三叶