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
.
Example 1:
1 2 3
| Input: 6 Output: true Explanation: 6 = 2 × 3
|
Example 2:
1 2 3
| Input: 8 Output: true Explanation: 8 = 2 × 2 × 2
|
Example 3:
1 2 3
| Input: 14 Output: false Explanation: 14 is not ugly since it includes another prime factor 7.
|
Note:
1
is typically treated as an ugly number.
- Input is within the 32-bit signed integer range: [−231, 231 − 1].
模拟
直接按照题意判断即可. 注意小于等于1的数的判断
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| class Solution { public boolean isUgly(int num) { if(num <= 0) return false; if(num == 1) return true; while(num != 1) { if(num % 2 == 0) { num /= 2; } else if(num % 3 == 0) { num /= 3; } else if(num % 5 == 0) { num /= 5; } else return false; } return true; } }
|