0326. Power of Three #
题目 #
- 给定整数
n
,判断它是否为3
的幂次方。 -2^31 <= n <= 2^31 - 1
思路 #
素因数分解 + 考虑输入范围 #
1162261467
是输入范围-2^31 <= n <= 2^31 - 1
内最大的3
的幂次方。- 只需判断
n
能否整除1162261467
即可得知它是否为3
的幂次方。 1162261467
该值可以通过循环来确定。
代码 #
素因数分解 + 考虑输入范围 #
class Solution {
public boolean isPowerOfThree(int n) {
if (n <= 0) return false;
return 1162261467 % n == 0;
}
}