507. Perfect Number (数学)

来源:互联网 发布:校宝软件 编辑:程序博客网 时间:2024/05/28 20:18

https://leetcode.com/problems/perfect-number/discuss/

题目:求完美数

代码一:直接判断

class Solution {public:    bool checkPerfectNumber(int num) {        int sum=1;        for(int x=2;x<=sqrt(num);x++)            if(num%x==0) sum+=x,sum+=num/x;        return (sum==num&&num!=1);    }};

代码二:打表

class Solution {public:    bool checkPerfectNumber(int num) {        static unordered_set<int> n = {6, 28, 496, 8128, 33550336};        return n.count(num);    }};
原创粉丝点击