题目描述
点这里
思路分析
看这道题
代码实现
class Solution {
public:
int nthUglyNumber(int n) {
if(!n)return 0;
int i=0,j=0,k=0;
vector<int> ans(1,1);
while(--n){
int t=min(ans[i]*2,min(ans[j]*3,ans[k]*5));
ans.push_back(t);
if(t==ans[i]*2)i++;
if(t==ans[j]*3)j++;
if(t==ans[k]*5)k++;
}
return ans.back();
}
};