Leetcode题目:Ugly Number

题目:Write a program to check whether a given number is an ugly number.

Ugly numbers are positive numbers whose prime factors only include 2, 3, 5. For example, 6, 8 are ugly while 14 is not ugly since it includes another prime factor 7.

Note that 1 is typically treated as an ugly number.

题目解答:这个题目用来判断当前的这个给定num是否是丑数,丑数的规则已经给定:(1)正整数;(2)素数因子只有2,3,5;(3)1也是丑数之一。

代码如下:

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

posted @ 2016-04-20 19:25  CodingGirl121  阅读(126)  评论(0编辑  收藏  举报