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

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

相关推荐
梦梦代码精1 小时前
BuildingAI 上部署自定义工作流智能体:5 个实用技巧
大数据·人工智能·算法·开源软件
Zephyr_02 小时前
Leedcode算法题
java·算法
流年如夢2 小时前
栈和列队(LeetCode)
数据结构·算法·leetcode·链表·职场和发展
Hello.Reader3 小时前
算法基础(十)——分治思想把大问题拆成小问题
java·开发语言·算法
绛橘色的日落(。・∀・)ノ4 小时前
机器学习之评估与偏差方差分析
算法
消失的旧时光-19434 小时前
C语言对象模型系列(四)《Linux 内核里的 container_of 到底是什么黑魔法?》—— 一篇讲透 Linux 内核的“对象模型”核心技巧
linux·c语言·算法
AI_Ming5 小时前
从0开始学AI:层归一化,原来是这回事!
算法·ai编程
WL_Aurora5 小时前
备战蓝桥杯国赛【Day 8】
算法·蓝桥杯
智者知已应修善业5 小时前
【51单片机模拟生日蜡烛】2023-10-10
c++·经验分享·笔记·算法·51单片机