欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

LintCode 517. 丑数 JavaScript算法

程序员文章站 2022-07-15 17:06:55
...

描述

写一个程序来检测一个整数是不是丑数。

丑数的定义是,只包含质因子 2, 3, 5 的正整数。比如 6, 8 就是丑数,但是 14 不是丑数因为他包含了质因子 7。

说明

可以认为 1 是一个特殊的丑数。

样例

-1:

输入: num = 8 
输出: true
解释: 8=2*2*2

-2:

输入: num = 14 
输出: false
解释: 14=2*7 

解析

让这个数一直除2、除3、除5,最后跟1比较

isUgly=n=>{
    if(n<=0) return false;  
    if(n==1) return true;  
    while(n>=2 && n%2==0) n/=2;  
    while(n>=3 && n%3==0) n/=3;  
    while(n>=5 && n%5==0) n/=5;  
    return n==1;
}

运行结果

LintCode 517. 丑数 JavaScript算法

LintCode 517. 丑数 JavaScript算法