C++ | Leetcode C++题解之第313题超级丑数

题目:

题解:

cpp 复制代码
class Solution {
public:
    int nthSuperUglyNumber(int n, vector<int>& primes) {
        vector<long> dp(n + 1);
        int m = primes.size();
        vector<int> pointers(m, 0);
        vector<long> nums(m, 1);
        for (int i = 1; i <= n; i++) {
            long minNum = INT_MAX;
            for (int j = 0; j < m; j++) {
                minNum = min(minNum, nums[j]);
            }
            dp[i] = minNum;
            for (int j = 0; j < m; j++) {
                if (nums[j] == minNum) {
                    pointers[j]++;
                    nums[j] = dp[pointers[j]] * primes[j];
                }
            }
        }
        return dp[n];
    }
};
相关推荐
DLite3 小时前
开源一个静态类型语言——NLang
c++·编译器·nlang
uoKent4 小时前
c++中new和malloc的区别
java·jvm·c++
会周易的程序员4 小时前
aiDgeController 软PLC虚拟机stvm集成测试报告
c++·物联网·架构·集成测试·st·软plc·iec61131
布莱克6055 小时前
队列详解:定义、分类、应用场景及与栈的区别(C/C++ 代码讲解)
c语言·开发语言·c++·队列
Navigator_Z5 小时前
LeetCode //C - 1221. Split a String in Balanced Strings
c语言·算法·leetcode
郝学胜-神的一滴5 小时前
C++11 工程级应用 06:自己造一个类似Python的Range迭代器
开发语言·c++·windows·python·程序人生·microsoft
zh_xuan5 小时前
c++ jthread
开发语言·c++·jthread
神仙别闹6 小时前
基于C++ WinPcap 的网络抓包软件
网络·c++·php
whitelbwwww6 小时前
c++运行RKNN
开发语言·c++
布莱克6056 小时前
栈(Stack)详解:定义、作用、应用场景及与队列的区别(附 C/C++ 代码)
c语言·开发语言·c++·