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.
思路:根据ugly number 的定义可知,ugly number 是由 2, 3,5 的因子组成的。要判断一个数是否为ugly number 看它的因子是否只包含2,3,5。
1 public class Solution { 2 /** 3 * @param num an integer 4 * @return true if num is an ugly number or false 5 */ 6 public boolean isUgly(int num) { 7 if (num == 1) { 8 return true; 9 } 10 if (num <= 0) { 11 return false; 12 } 13 while (num % 2 == 0) { 14 num = num / 2; 15 } 16 while (num % 3 == 0) { 17 num = num / 3; 18 } 19 while (num % 5 == 0) { 20 num = num / 5; 21 } 22 return num == 1 ? true : false; 23 } 24 }

浙公网安备 33010602011771号