int nthUglyNumber(int n) {
int shu[n];
if(n==1)
return 1;
shu[0]=1;
int i=1;
int p2=0,p3=0,p5=0;
for(;i<n;i++){
int ret;
if(shu[p2]*2<shu[p3]*3){
ret=shu[p2]*2;
}else{
ret=shu[p3]*3;
}
ret=ret<shu[p5]*5?ret:shu[p5]*5;
if(ret==shu[p2]*2)
p2++;
if(ret==shu[p3]*3)
p3++;
if(ret==shu[p5]*5)
p5++;
shu[i]=ret;
}
return shu[n-1];
}
264. 丑数 II个人解法
最新推荐文章于 2024-10-09 10:07:13 发布