題目:Write a program to check whether a given number is an ugly number.
Ugly numbers are positive numbers whose prime factors only include2, 3, 5
. For example,6, 8
are ugly while14
is not ugly since it includes another prime factor7
.
Note that1
is typically treated as an ugly number.
解題思路:上述題意表示,丑數的含義是其因子只包含2,3,5,判斷一個數是否為丑數,只需要將這個數與2,3,5循環相除,如果余數為1,則為丑數,否則不是。
示例代碼:
public class Solution { public boolean isUgly(int num) { if (num <= 0) { return false; } while (num % 2 == 0) num /= 2; while (num % 3 == 0) num /= 3; while (num % 5 == 0) num /= 5; if (num == 1) { return true; } else { return false; } } }