Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Ugly Numbers by freeman_lex
def ugly_number(n: int) -> int:
numbers = []
for a in range(n):
numbers1 = numbers[:]
for b in range(n//4 + 1):
for c in range(n//4 + 1):
numbers.append(pow(2, a)*pow(3, b)*pow(5, c))
if len(numbers) > n:
numbers.sort()
numbers = numbers[:n]
if len(numbers) > n:
numbers.sort()
numbers = numbers[:n]
if numbers1 == numbers: break
return numbers[-1]
if __name__ == "__main__":
print("Example:")
print(ugly_number(4))
# These "asserts" are used for self-checking and not for an auto-testing
assert ugly_number(4) == 4
assert ugly_number(6) == 6
assert ugly_number(11) == 15
print("Ugly Numbers coding complete? Click 'Check' to earn cool rewards!")
Jan. 16, 2024