c++

丑数

http://www.nowcoder.com/questionTerminal/6aa9e04fc3794f68acf8778237ba065b

class Solution {
public:
    int GetUglyNumber_Solution(int index) {
        if (index <= 0) return 0;
        vector<int> ugly(index);
        ugly[0] = 1;
        int  p2 = 0, p3 = 0, p5 = 0;
        for (int i = 1; i < index; ++ i) {
            ugly[i] = min(ugly[p2]*2, min(ugly[p3]*3, ugly[p5]*5));
            if(ugly[i] == ugly[p2]*2) ++p2;
            if(ugly[i] == ugly[p3]*3) ++p3;
            if(ugly[i] == ugly[p5]*5) ++p5;
        }
        return ugly[index-1];
    }
};
全部评论

相关推荐

不愿透露姓名的神秘牛友
11-27 10:48
点赞 评论 收藏
分享
冲芭芭拉鸭:你这图还挺新,偷了。
投递美团等公司10个岗位
点赞 评论 收藏
分享
没有offer的小土豆:专业面试一般是分配面试官然后联系你面试 应该是还没给你分配对应面试官
点赞 评论 收藏
分享
评论
6
收藏
分享
牛客网
牛客企业服务