LeetCode Weekly Contest 25 之 507.Perfect Number

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014688145/article/details/66473957

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由两个相乘的数分解,所以遍历时只需要遍历num−−−−√\sqrt {num}个数即可,所以遍历条件为i*i <= num,注意等于号。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序员的知识天地

python基础教程:作用域和命名空间

命名空间和作用域的概念我们之前也提到过,比如内置函数globals(),函数中变量的作用域,模块使用的import等等。这些可能让我们对这两个概念有了大致的理解...

9040
来自专栏Bingo的深度学习杂货店

【DP】1027. Longest Arithmetic Sequence

Given an array A of integers, return the length of the longest arithmetic subseq...

12530
来自专栏坚毅的PHP

简单可行的code review规则

曾经有一段垃圾代码放在我的面前,我没有拒绝,等我真正开始接手的时候我才后悔莫及,程序员最痛苦的事莫过于此!

17550
来自专栏ATYUN订阅号

Nature:不用开口说话,AI直接将大脑信号转译成言语

成千上万的人因事故或疾病导致言语能力丧失,与他人交流陷入困难。为了给不能说话的人提供便利,神经科学家设计了一种可以将大脑信号转换为语音的系统,每分钟可产生约15...

11340
来自专栏玩转JavaEE

SpringMVC 方法三种类型返回值总结,你用过几种?

SpringMVC 现在算是 Java 领域的一个基础性框架了,很多人天天用,可是对于 SpringMVC 方法的返回值,你又是否完全清楚呢?今天松哥就来和大家...

12120
来自专栏A周立SpringCloud

反应式编程在微服务下的重生

反应式编程的提出,是在分布式编程刚兴起不久。当时没有各种 PaaS 平台,而分布式系统中,常常出现一个节点出问题,导致整个系统瘫痪的情况。所以,反应式编程的思想...

13520
来自专栏代码男人

Android Hook告诉你 如何启动未注册的Activity

Android Hook 插件化其实已经不是什么新鲜的技术了,不知你有没有想过,支付宝中那么多小软件:淘票票 ,火车票等软件,难道是支付宝这个软件自己编写的吗?...

15940
来自专栏ATYUN订阅号

AI工具PaintBot模仿绘画大师风格,还原度高

现在一组研究人员用一种新的工具PaintBot给人们留下了深刻的印象,他们成功地用AI对早期绘画大师进行了强有力的模仿。

16840
来自专栏Spring相关

并发编程情况下几个相应问题简介

​ 死锁是两个或更多线程阻塞着等待其它处于死锁状态的线程所持有的锁。死锁通常发生在多个线程同时但以不同的顺序请求同一组锁的时候。

7420
来自专栏ATYUN订阅号

len(x) 击败 x.len(),从内置函数看 Python 的设计思想

它们预先定义在内置命名空间中,开箱即用,所见即所得。Python 被公认是一种新手友好型的语言,这种说法能够成立,内置函数在其中起到了极关键的作用。

11730

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励