Ugly Number
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.
样例
Given num = 8
return true
Given num = 14
return false
解题
直接递归
public class Solution {
/**
* @param num an integer
* @return true if num is an ugly number or false
*/
public boolean isUgly(int num) {
// Write your code here
if(num <=0)
return false;
if(num == 1)
return true;
if(num %2 ==0)
return isUgly(num/2);
if(num %3 ==0)
return isUgly(num/3);
if(num%5 ==0)
return isUgly(num/5);
return false; }
}
while 循环‘
public class Solution {
/**
* @param num an integer
* @return true if num is an ugly number or false
*/
public boolean isUgly(int num) {
// Write your code here
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; }
}