Leetcode:丑数2

cpp 复制代码
class Solution {
public:
    
    long long ret =INT_MAX;
    vector<int> v = { 2,3,5 };
    void dfs(long long tar, int idx, long long last)
    {
        if (tar > last)
        {
            if (ret == last)
                ret = tar;
            else ret = min(ret, tar);
            return;
        }
        for (int i = idx; i < 3; i++)
        {
            tar *= v[i];
            dfs(tar, i, last);
            tar /= v[i];
        }
    }
    int nthUglyNumber(int n)
    {
        long long last = 1;
        for (int i = 2; i <= n; i++)
        {
            dfs(1, 0, last);
            last = ret;
        }
        return ret == INT_MAX? 1 : ret;
    }
};

自己的方法,不是最优解。

相关推荐
Norvyn_76 分钟前
LeetCode|Day18|20. 有效的括号|Python刷题笔记
笔记·python·leetcode
呆呆的小鳄鱼35 分钟前
leetcode:冗余连接 II[并查集检查环][节点入度]
算法·leetcode·职场和发展
墨染点香35 分钟前
LeetCode Hot100【6. Z 字形变换】
java·算法·leetcode
沧澜sincerely36 分钟前
排序【各种题型+对应LeetCode习题练习】
算法·leetcode·排序算法
CQ_071236 分钟前
自学力扣:最长连续序列
数据结构·算法·leetcode
弥彦_1 小时前
cf1925B&C
数据结构·算法
YuTaoShao1 小时前
【LeetCode 热题 100】994. 腐烂的橘子——BFS
java·linux·算法·leetcode·宽度优先
Wendy14419 小时前
【线性回归(最小二乘法MSE)】——机器学习
算法·机器学习·线性回归
拾光拾趣录9 小时前
括号生成算法
前端·算法
渣呵10 小时前
求不重叠区间总和最大值
算法