Offer 驾到,掘友接招!我正在参与2022春招打卡活动,点击查看活动详情。
一、题目描述:
263. 丑数 - 力扣(LeetCode) (leetcode-cn.com)
给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false 。
丑数 就是只包含质因数 2、3 和/或 5 的正整数。
示例 1:
输入:n = 6
输出:true
解释:6 = 2 × 3
示例 2:
输入:n = 8
输出:true
解释:8 = 2 × 2 × 2
示例 3:
输入:n = 14
输出:false
解释:14 不是丑数,因为它包含了另外一个质因数 7 。
示例 4:
输入:n = 1
输出:true
解释:1 通常被视为丑数。
提示:
- -2^31 <= n <= 2^31 - 1
二、思路分析:
根据题目:首先除2,直到不能整除为止,然后除5到不能整除为止,再然后除3直到不能整除为止。 最终判断剩余的数字是否为1,如果是1则为丑数,否则不是丑数
if 和while 的区别 1、if执行完所有的语句,就不会执行了 2、while:必须把条件内的语句执行完了才不会执行
三、AC 代码:
public boolean isUgly(int num) {
if(num == 0){
return false;
}
while (num != 1){
if(num % 2 == 0){
num /= 2;
continue;
}
if(num % 3 == 0){
num /= 3;
continue;
}
if(num % 5 == 0){
num /= 5;
continue;
}
return false;
}
return true;
}
范文参考:
【宫水三叶】简单的分情况讨论题,以及为啥先除哪个都可以 - 丑数 - 力扣(LeetCode) (leetcode-cn.com)