LeetCode Weekly Contest 25 之 507.Perfect Number
来源:互联网 发布:java @apect 编辑:程序博客网 时间:2024/06/02 07:16
LeetCode Weekly Contest 25
赛题
本次周赛主要分为以下4道题:
- 507 Perfect Number (3分)
- 537 Complex Number Multiplication (6分)
- 545 boundary of Binary Tree (8分)
- 546 Remove Boxes (9分)
507 Perfect Number
Problem:
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)
没有什么难度的题,思路在题目中已经给你了,无非是在遍历条件上做点思考。
My first solution(14ms)
public boolean checkPerfectNumber(int num) { //边界条件 if(num == 0 || num == 1) return false; //第二部分 int sum = 1; for (int i = 2; i * i <= num; i++) { if (num % i == 0){ sum += i + num / i; } } return sum == num; }
注意一些细节,Perfect Number不能由它自己组成,所以排除0和1。num由两个相乘的数分解,所以遍历时只需要遍历i*i <= num
,注意等于号。
0 0
- LeetCode Weekly Contest 25 之 507.Perfect Number
- LeetCode Weekly Contest 25 之 537.Complex Number Multiplication
- LeetCode Weekly Contest 25
- LeetCode Weekly Contest 25 之 545.Boundary of Binary Tree
- LeetCode Weekly Contest 24 之 542.01 Matrix
- Leetcode-507. Perfect Number
- 【Leetcode】507. Perfect Number
- LeetCode:507. Perfect Number
- [LeetCode]507. Perfect Number
- LeetCode 507. Perfect Number
- leetcode:507. Perfect Number
- [leetcode]: 507. Perfect Number
- [leetcode]507. Perfect Number
- leetcode 507. Perfect Number
- leetcode 507. Perfect Number
- leetcode weekly contest #26
- leetcode weekly contest #27
- LeetCode Weekly Contest 28
- QT开发(六十二)———QT5解析Json文件
- QT开发(六十三)——QT事件机制分析
- QT开发(六十四)——QT样式表(一)
- QT开发(六十四)——QT样式表(二)
- QT开发(六十四)——QT样式表(三)
- LeetCode Weekly Contest 25 之 507.Perfect Number
- QT开发(三十八)——Model/View框架编程
- QT开发(六十五)——QT样式表编程实例
- 牛客网2-给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字
- QT开发(六十六)——登录对话框的验证机制
- QT开发(六十八)——QSS应用
- C++语言学习(五)——二阶构造模式
- C++语言学习(九)——多态
- VC++开发(一)——VC++自定义注释