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];
}
};
leetcode 264. 丑数 II
最新推荐文章于 2024-04-18 07:58:16 发布