判断一个整数是否是‘丑陋的’。若一个整数是正数且其质因子仅包括2、3、5, 那么这个数是‘丑陋的’。特例,1也是’丑陋的‘。
首先若n非正,则直接返回false。否则将其分别除以2、3、5直到不能除进,若最后的结果是1则返回true否则返回false。
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;
if(num == 1) return true;
return false;
}
};