题目描述:
Given an integer, write a function to determine if it is a power of three.
Follow up:
Could you do it without using any loop / recursion?
解题思路:
对给定的数求以3为底的对数,然后再将结果用于3的次幂,看是否与原来的数相同。
代码如下:
public class Solution {
public boolean isPowerOfThree(int n) {
return n <= 0 ? false : n == Math.pow(3, Math.round(Math.log(n) / Math.log(3)));
}
}