乐趣区

关于java:LeetCode263丑数

丑数

题目形容:给你一个整数 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));
    }
}

【每日寄语】万物之中,心愿至美。

退出移动版