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)