个人技术分享

在LeetCode上,n丑数问题的描述是:

给你一个整数 n ,找出并返回第 n 个 丑数 。

丑数是只包含质因子 2, 3, 5 的正整数。

示例 1:

输入: n = 10 输出: 12 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。

这个问题可以通过迭代来解决,我们可以从1开始,逐个判断每个数是否是丑数,并更新结果。

class Solution {
public:
    bool isUgly(int num) {
        if (num <= 0) return false;
        while (num % 2 == 0) num /= 2;
        while (num % 3 == 0) num /= 3;
        while (num % 5 == 0) num /= 5;
        return num == 1;
    }

};