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];
    }
};
相关推荐
selfsongs10 小时前
指针、内存管理、现代 C++ 特性
c++
吃着火锅x唱着歌12 小时前
Effective C++ 学习笔记 条款37 绝不重新定义继承而来的缺省参数值
c++·笔记·学习
2401_8414956412 小时前
【数据结构】B+树
数据结构·数据库·c++·b+树·概念·结构·操作原理
小保CPP12 小时前
OCR C++ Tesseract按行识别字符
c++·人工智能·ocr·模式识别·光学字符识别
阿米亚波12 小时前
【C++】流式数据输入处理(不完全整理)
开发语言·c++·笔记
皓月斯语14 小时前
【C++基础】三目运算符
开发语言·数据结构·c++
初願致夕霞14 小时前
C++懒汉单例设计详解
服务器·开发语言·c++
脱胎换骨-军哥14 小时前
C++分布式系统设计:从通信引擎到分布式共识
开发语言·c++·分布式
脱胎换骨-军哥15 小时前
C++零成本抽象理论深度拆解:现代C++如何在不牺牲性能的前提下提供高级语法封装
java·开发语言·c++
_wyt00116 小时前
01背包问题详解
c++·背包dp