标题

```import java.util.* ;
public class Solution {
    public int GetUglyNumber_Solution(int index) {
        if(index <= 6) {
            return index ;
        }
        int p2 = 0 ;//res中哪个元素*2
        int p3 = 0 ;//res中哪个元素*3
        int p5 = 0 ;//res中哪个元素*5
        int res[] = new int[index] ;//res[i]表示第i+1个丑数
        res[0] = 1 ;
        for(int i = 1 ; i < index ; i ++) {
            //下一个丑数
            res[i] = Math.min(res[p2]*2 , Math.min(res[p3]*3 , res[p5]*5)) ;
            //具体是哪一个
            if(res[i] == res[p2]*2) {
                //因为当前p2指向的数*2得到的丑数已经被使用,下一次*2的数字就不是ps当前指的了,向后移动一位
                p2++ ;
            }
            if(res[i] == res[p3]*3) { //必须每个数都判断一下,因为这三个数有可能出现重复,即只要使用了的数,就不能再使用了
                p3++ ;
            }
            if(res[i] == res[p5]*5) {
                p5++ ;
            }
        }
        return res[index-1] ;
    }
}