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^n最大值对3^n求余为0
代码:
class Solution {
public:
bool isPowerOfThree(int n) {
if(n<=0)return false;
int maxpowerofthree=(int)(log(INT_MAX)/log(3));
int maxtree=pow(3,maxpowerofthree);
if((maxtree%n)==0)
{
return true;
}
return false;
}
};