독도 광고 모금 캠페인


2008/09/24 23:15

Ugly Numbers

UglyNumbers

def ugly(pos):
    count = 0
    uglys = [2,3,5]
    minVal = 0
    while count != pos-1:
        minVal = min(uglys)
        if uglys.count(minVal*2)==0:
            uglys.append(minVal*2)
        if uglys.count(minVal*3)==0:
            uglys.append(minVal*3)
        if uglys.count(minVal*5)==0:
            uglys.append(minVal*5)

        uglys.remove(minVal)
        count += 1
print minVal
if __name__=='__main__': ugly(1550)

내 노트북을 기준으로 이 코드는 0.00913초. 내 코드는 0.0693초. 약 8배 정도의 차이가 난다.
Trackback 0 Comment 0