Repeatedly divide by 3 until not divisible.
3^19 % n == 0 (largest 32-bit power)1class Solution {
2 public boolean isPowerOfThree(int n) {
3 if (n <= 0) return false;
4
5 while (n % 3 == 0) {
6 n /= 3;
7 }
8
9 return n == 1;
10 }
11}