Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.

Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).

Some math knowledge can solve it without using recursion or loops. Yet I don't see the value of this question.

public boolean isPowerOfThree(int n) { return n == 0 ? false : n == Math.pow(3, Math.round(Math.log(n) / Math.log(3))); }

If Math.round(Math.log(n) / Math.log(3)) is close enough to integer, might we instantly infer that n is actually a power of three without computing the Math.pow() method and accumulating additional computational error?

Looks like your connection to LeetCode Discuss was lost, please wait while we try to reconnect.