Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Checking Perfect Power by mortonfox
from math import log
def perfect_power(n: int) -> bool:
return any(round(n ** (1/p)) ** p == n for p in range(2, n.bit_length()))
print("Example:")
print(perfect_power(9))
# These "asserts" are used for self-checking
assert perfect_power(8) == True
assert perfect_power(42) == False
assert perfect_power(441) == True
assert perfect_power(469097433) == True
assert perfect_power(4922235242952026704037113243122008064) == True
print("The mission is done! Click 'Check Solution' to earn rewards!")
Aug. 23, 2023
Comments: