offer34--丑数

来源:互联网 发布:ipad看图软件 编辑:程序博客网 时间:2024/05/29 14:43
# coding=utf-8#打印第N个丑数def getugly(index):    if index<=0:        return 0    uglyNumber=[1]*index    nextindex=1    index2=0    index3=0    index5=0    while nextindex<index:        minval=min(uglyNumber[index2]*2,uglyNumber[index3]*3,uglyNumber[index5]*5)        uglyNumber[nextindex]=minval        while uglyNumber[index2]*2<=uglyNumber[nextindex]:            index2+=1        while uglyNumber[index3]*3<=uglyNumber[nextindex]:            index3+=1        while uglyNumber[index5]*5<=uglyNumber[nextindex]:            index5+=1        nextindex+=1    return uglyNumber[-1]if __name__ == '__main__':    print getugly(5)
原创粉丝点击