丑数
题目形容:给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false 。
丑数 就是只蕴含质因数 2、3 和/或 5 的正整数。
示例阐明请见LeetCode官网。
起源:力扣(LeetCode)
链接:https://leetcode-cn.com/probl...
著作权归领扣网络所有。商业转载请分割官网受权,非商业转载请注明出处。
解法一:遍历
- 首先,如果n等于0,间接返回false。
- 循环解决将n的质因子2、3、5都除掉,而后循环解决,如果n可能被
2~Math.sqrt(n)
的任何一个数整除,则返回false;否则,如果n为1、2、3、5中的任何一个数字,返回true,否则返回false。
public class LeetCode_263 { public static boolean isUgly(int n) { if (n == 0) { return false; } while (n % 2 == 0) { n = n / 2; } while (n % 3 == 0) { n = n / 3; } while (n % 5 == 0) { n = n / 5; } for (int i = 2; i <= Math.sqrt(n); i++) { if (n % i == 0) { return false; } } if (n == 1 || n == 2 || n == 3 || n == 5) { return true; } else { return false; } } public static void main(String[] args) { System.out.println(isUgly(920408890)); }}
【每日寄语】 万物之中,心愿至美。