给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false 。
丑数 就是只包含质因数 2、3 和/或 5 的正整数。
原题地址:丑数
或直转到:https://leetcode-cn.com/problems/ugly-number/
- 我的题解太让人作呕了,这里直接上最经典的方法
bool isUgly(int n) {
if (n <= 0) {
return false;
}
int factors[] = {2, 3, 5};
for (int i = 0; i < 3; i++) {
while (n % factors[i] == 0) {
n /= factors[i];
}
}
return n == 1;
}//作者:LeetCode-Solution
思路看一眼就会编了,能除2、3、5任意一个数就除,不能除尽就不是丑数。
我真傻,真的,还试图考虑到所有情况,暴力求解,这就是思路的魅力么?