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;
    }
};

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

相关推荐
菜菜的顾清寒几秒前
力扣HOT100(49)动态规划 -- 打家劫舍
算法·leetcode·动态规划
葡萄城技术团队4 分钟前
观察生活:人是如何分词的
算法·生活
装不满的克莱因瓶9 分钟前
什么是特征分解?从数学定义到现实问题的映射
人工智能·数学·算法·机器学习·ai·特征分解
killerbasd14 分钟前
总结 6.1
算法
「維他檸檬茶」17 分钟前
大模型算法学习2026.6.1
学习·算法·大模型·nlp
玖釉-18 分钟前
LeetCode Hot 100 知识点总结与算法指南
c++·windows·算法·leetcode
填满你的记忆21 分钟前
《动态规划-基础篇》
算法·动态规划·力扣
进击的荆棘22 分钟前
优选算法——队列+宽搜
数据结构·c++·算法·leetcode·bfs·队列
黎阳之光24 分钟前
虚实同源·数智治水:黎阳之光视频孪生,重构智慧水务新范式
运维·物联网·算法·安全·数字孪生
江屿风26 分钟前
C++OJ题经验总结(竞赛)4
开发语言·c++·笔记·算法·dp·双指针