leetcode 264. 丑数 II

264. 丑数 II

在这里插入图片描述

class Solution {
public:
    int nthUglyNumber(int n) {
        vector<int> ugly(n, 0);
        int ind2 = 0, ind3 = 0, ind5 = 0;
        ugly[0] = 1;
        for(int ind = 1; ind < n; ind++) {
            ugly[ind] = min(min(ugly[ind2] * 2, ugly[ind3] * 3), ugly[ind5] * 5);
            if(ugly[ind] == ugly[ind2] * 2) ind2++;
            if(ugly[ind] == ugly[ind3] * 3) ind3++;
            if(ugly[ind] == ugly[ind5] * 5) ind5++;
        }
        return ugly[n-1];
    }
};