<LeetCode>263. 丑数

编写程序判断给定的数是否为丑数。

丑数就是只包含质因子 2, 3, 5 的正整数。例如, 6, 8 是丑数,而 14 不是,因为它包含了另外一个质因子 7

注意:

  1. 1 也可以被当做丑数。

  1. 输入不会超过32位整数的范围。

解题思路:

也过于easy了吧。。。依次判断能否被2/3/5整除,能的话就一直除直到除不尽,最后如果是1,说明是2,3,5的公倍数,如果不是,那么就说明不是丑数。

真是丑题。。太简单了。

class Solution {
public:
    bool isUgly(int num) {
        if(num == 0)
            return false;
        while(num%2 == 0)
            num /= 2;
        while(num%3 == 0)
            num /= 3;
        while(num%5 == 0)
            num /= 5;
        return num == 1;
    }
};

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页