LintCode - 丑数(普通)

版权声明:本文为博主原创文章,未经博主允许不得转载。

难度:容易
要求:

写一个程序来检测一个整数是不是丑数。
丑数的定义是,只包含质因子 2, 3, 5
的正整数。比如 6, 8 就是丑数,但是 14 不是丑数以为他包含了质因子 7。

样例

给出 num = 8,返回 true。给出 num = 14,返回 false。

思路

    /**
     * @param num an integer
     * @return true if num is an ugly number or false
     */
    public boolean isUgly(int num) {
        if (num <= 0) return false;  
        if (num == 1) return true; 
        
        while(num >= 2 && num % 2 == 0){
            num /= 2;
        }
        
        while(num >= 3 && num % 3 == 0){
            num /= 3;
        }
        
        while(num >= 5 && num % 5 == 0){
            num /= 5;
        }
        
        return num == 1;
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 写一个程序来检测一个整数是不是丑数。丑数的定义是,只包含质因子 2, 3, 5 的正整数。比如 6, 8 就是丑数...
    DayDayUpppppp阅读 451评论 0 1
  • 题目 写一个程序来检测一个整数是不是丑数。丑数的定义是,只包含质因子 2, 3, 5的正整数。比如 6, 8 就是...
    六尺帐篷阅读 270评论 0 1
  • 433.岛屿的个数 (7.2) 给一个01矩阵,求不同的岛屿的个数。 0代表海,1代表岛,如果两个1相邻,那么这两...
    mytac阅读 474评论 0 0
  • 在我儿时,很多时候我分不清梦与现实,脑子一片混沌,看所有事物都模糊重影,看人们脸上倏诈忽狞。总在担心挨打,总在恐...
    芙阿阅读 223评论 19 1
  • 宝提前在"一起作业"中,用积攒的积分做了音乐贺卡给我;又用一个精致小本写了各种"卷"给我,都是我喜好而他知道的:酸...
    天蓝Sea阅读 134评论 0 0