题目描述:
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
中文理解:给出一个数,判断这个数是否可以且仅由任意个2,3,5乘积得到,其中0不是丑数,1是丑数。
解题思路:使用这个数分别与2,3,5相处当且仅当该数mod2,3,5等于0,若返回的结果为1,则是丑数,否则不是丑数。
代码(java):
class Solution {
public boolean isUgly(int num) {
if(num==0)return false;
if(num==1)return true;
while(num%2==0){
num=num/2;
}
while(num%3==0){
num=num/3;
}
while(num%5==0){
num=num/5;
}
return num==1 ? true : false;
}
}