leetcode Perfect Number 完全数
来源:互联网 发布:江苏国税普通发票软件 编辑:程序博客网 时间:2024/06/09 15:49
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
Note: The input number n will not exceed 100,000,000. (1e8)
题意:判断一个数是不是完全数。
思路:
1、遍历会超时,稍微优化一下,注意num=0,1的特殊情况
class Solution {public: bool checkPerfectNumber(int num) { if (num == 0) return false; int sum = 0; for (int i = 1; i < num / i; ++i) { if (num % i == 0){ sum += i; sum += (num / i); } } sum -= num; if (sum == num) return true; return false; }};
2、注意到n不超过100000000,而小于100000000的完全数有6、28、496、8128、33550336。
class Solution {public: bool checkPerfectNumber(int num) { static unordered_set<int> n = {6, 28, 496, 8128, 33550336}; return n.count(num); }};
阅读全文
0 0
- leetcode Perfect Number 完全数
- 完全数(Perfect number)
- Java实现完全数(Perfect number)
- [LeetCode] Perfect Squares 完全平方数
- Leetcode-507. Perfect Number
- 【Leetcode】507. Perfect Number
- LeetCode:507. Perfect Number
- [LeetCode]507. Perfect Number
- LeetCode 507. Perfect Number
- LeetCode : Perfect Number
- leetcode:507. Perfect Number
- Perfect Number【LeetCode】
- [leetcode]: 507. Perfect Number
- [leetcode]507. Perfect Number
- leetcode[Perfect Number]
- leetcode 507. Perfect Number
- Leetcode 507 Perfect Number
- LeetCode.507 Perfect Number
- 网络流 最小路径覆盖 二分图最大匹配
- Groovy初步了解
- php7环境下ThinkPHP报错:Cannot use 'String' as class name as it is reserved
- 动态规划 最长公共子序列
- CSS Mastery摘要(1)--Getting Your Styles to Hit the Target
- leetcode Perfect Number 完全数
- 一种别样的打印Log的方式
- Ubuntu下SVN服务的搭建(apache2+svn)
- IO-01-字节流与字符流
- loadrunner的学习
- 【密码学】C语言实现AES核心步骤
- LeetCode-矩阵旋转
- 1064. 朋友数(20)
- RAID--独立冗余磁盘阵列