[Leetcode] Ugly Number, Solution

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.

[Thoughts]
这题简单。既然已经说了ugly number是{2,3,5}的组合乘积构成的,那么判断逻辑也就简单了,对于任意一个给定的数字,拼命除这三个因子,最后能整除的就是ugly number,否则就不是。
逻辑看code
[Code]
1:  class Solution {  
2: public:
3: bool isUgly(int num) {
4: if (num <= 0) return false;
5: while (num % 2 == 0) num /= 2;
6: while (num % 3 == 0) num /= 3;
7: while (num % 5 == 0) num /= 5;
8: return num == 1;
9: }
10: };
原文地址:https://www.cnblogs.com/codingtmd/p/5078838.html