# [LeetCode] 263. Ugly Number 丑陋数

2021年09月15日 阅读数：3

Write a program to check whether a given number is an ugly number.html

Ugly numbers are positive numbers whose prime factors only include `2, 3, 5`.java

Example 1:python

```Input: 6
Output: true
Explanation: 6 = 2 × 3```

Example 2:post

```Input: 8
Output: true
Explanation: 8 = 2 × 2 × 2
```

Example 3:url

```Input: 14
Output: false
Explanation: `14` is not ugly since it includes another prime factor `7`.
```

Note:code

1. `1` is typically treated as an ugly number.
2. Input is within the 32-bit signed integer range: [−231,  231 − 1].

Java:ip

```for (int i=2; i<6 && num>0; i++)
while (num % i == 0)
num /= i;
return num == 1;
```

Python:get

```class Solution:
# @param {integer} num
# @return {boolean}
def isUgly(self, num):
if num == 0:
return False
for i in [2, 3, 5]:
while num % i == 0:
num /= i
return num == 1　　```

Python:

```for p in 2, 3, 5:
while num % p == 0 < num:
num /= p
return num == 1
```

C++:

```for (int i=2; i<6 && num; i++)
while (num % i == 0)
num /= i;
return num == 1;　```

C++:

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

C++:

```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;
}
};
```

[LeetCode] 264. Ugly Number II 丑陋数 II

[LeetCode] 313. Super Ugly Number 超级丑陋数