题解 | #丑数#

丑数

https://www.nowcoder.com/practice/6aa9e04fc3794f68acf8778237ba065b

#include <functional>
#include <queue>
#include <unordered_map>
class Solution {
public:
    int GetUglyNumber_Solution(int index) {
        if(index==0){
            return 0;
        }
        vector<int> vec={2,3,5};
        unordered_map<long, int> map;
        priority_queue<long,vector<long>,greater<long>> ans;
        map[1]=1;
        ans.push(1);
        long a=0;
        for(int i=0;i<index;i++){
            a=ans.top();
            ans.pop();
            for(int j=0;j<3;j++){
                long t=a*vec[j];
                if(map.find(t)==map.end()){
                    map[t]=1;
                    ans.push(t);
                }
            }
        }
        return a;
    }
};

全部评论

相关推荐

头像
11-06 10:58
已编辑
门头沟学院 嵌入式工程师
双非25想找富婆不想打工:哦,这该死的伦敦腔,我敢打赌,你简直是个天才,如果我有offer的话,我一定用offer狠狠的打在你的脸上
点赞 评论 收藏
分享
10-30 23:23
已编辑
中山大学 Web前端
去B座二楼砸水泥地:这无论是个人素质还是专业素质都👇拉满了吧
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务