您的位置:首页 > 其它

LeetCode--No.263--Ugly Number

2016-06-15 03:14 281 查看
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.

public class Solution {
public boolean isUgly(int num) {
if (num <=0)
return false;
while(num % 2 == 0)
num = num/2;
while(num % 3 == 0)
num = num/3;
while(num % 5 == 0)
num = num/5;
return num == 1;
}
}

这样写会超时。因为会进行很多不必要的判断条件。

public class Solution {
public boolean isUgly(int num) {
if (num <=0)
return false;
if (num<=5)
return true;
while(num >=5){
if(num % 2 == 0)
num /= 2;
if(num % 3 == 0)
num /= 3;
if(num % 5 == 0)
num /= 5;
}
if(num < 5)
return true;
else
return false;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: