|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- 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:
- Input: 6
- Output: true
- Explanation: 6 = 2 × 3
- Example 2:
- Input: 8
- Output: true
- Explanation: 8 = 2 × 2 × 2
- Example 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].
复制代码
- class Solution {
- public boolean isUgly(int num) {
- if(num == 1) return true;
- if(num == 0) return false;
- int a = 2;
- while(a != 0 && num % a == 0){
- a = a * 2;
- }
- a = a /2 ;
- if(a != 0)
- num = num / a;
- a =3;
- while(a != 0 && num % a == 0){
- a = a * 3;
- }
-
- a = a /3;
- // System.out.println(b);
- if(a != 0)
- num = num / a;
- a = 5;
- while(a != 0 && num % a == 0){
- a = a * 5;
- }
- a = a /5;
- if(a != 0)
- num = num / a;
- if(num == 1) return true;
- else
- return false;
- }
- }
复制代码 |
|