leetcode:263. 丑数(python3解法,数学相关算法题)

难度:简单

丑数 就是只包含质因数 235整数。

给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false

示例 1:

复制代码
输入:n = 6
输出:true
解释:6 = 2 × 3

示例 2:

复制代码
输入:n = 1
输出:true
解释:1 没有质因数。

示例 3:

复制代码
输入:n = 14
输出:false
解释:14 不是丑数,因为它包含了另外一个质因数7。

提示:

  • -231 <= n <= 231 - 1

题解:

python 复制代码
class Solution:
    def isUgly(self, n: int) -> bool:
        # 1️⃣ 首先检查:丑数必须是正整数
        if n <= 0:
            return False
    
        # 2️⃣ 先把所有 "2" 因子剥干净(就像剥洋葱)
        while n % 2 == 0:  # 只要能被2整除...
            n //= 2        # 就除一次2(剥掉一层)
        # 例如:n=8 → 8→4→2→1 (最后n=1)

        # 3️⃣ 再把所有 "3" 因子剥干净
        while n % 3 == 0:  # 只要能被3整除...
            n //= 3        # 就除一次3
        # 例如:n=9 → 9→3→1 (最后n=1)

        # 4️⃣ 最后把所有 "5" 因子剥干净
        while n % 5 == 0:  # 只要能被5整除...
            n //= 5        # 就除一次5
            # 例如:n=25 → 25→5→1 (最后n=1)

        # 5️⃣ 检查结果:如果剥到只剩1就是丑数
        return n == 1  # ✅ 如果n=1返回True,否则返回False

        
相关推荐
兵慌码乱2 小时前
基于Python+PyQt5+SQLite的药房管理系统实现:事务一致性与界面解耦全流程解析
python·sqlite·信号与槽·pyqt5·数据库设计·桌面应用开发·事务处理
金銀銅鐵4 小时前
[Python] 体验用欧几里得算法计算最大公约数的过程
python·数学
FreakStudio8 小时前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
kisshyshy8 小时前
🍦 雪糕、食堂、火车厢:三幅漫画吃透栈、队列与链表
javascript·算法
用户0332126663679 小时前
使用 Python 从零创建 Word 文档
python
Csvn14 小时前
Python 两大经典坑点 —— 可变默认参数 & 闭包延迟绑定
后端·python
曲幽15 小时前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate
猿人谷15 小时前
不只是 CPU 阈值:STAR 如何用 GAT + Transformer 做容器级自动扩缩容?
人工智能·算法
用户5569188175316 小时前
#从脚本到独立程序:Python + Playwright 批量抓取的完整踩坑记录
python·自动化运维
复杂网络16 小时前
Stable Diffusion 视觉大模型微调技术深度调研
算法