丑数

2020-07-28  本文已影响0人  Crazy_Bear
class Solution {
public:
    int GetUglyNumber_Solution(int index) {
    if(index <=0) return 0;
        int *arr = new int[index];
        arr[0] = 1;
        int *p2 = arr;
        int *p3 = arr;
        int *p5 = arr;
        int next = 1;
        int min_val = 0;
        while(next < index){
            int min_val_1 = min(*p2 *2, *p3 * 3);
            min_val = min(min_val_1,*p5 * 5);
            arr[next++] = min_val;
            while(*p2*2<=min_val) p2++;
            while(*p3*3<=min_val) p3++;
            while(*p5*5<=min_val) p5++;
        }
        return arr[index - 1];
    }
};
上一篇 下一篇

猜你喜欢

热点阅读