您的位置:首页 > 其它

[leetcode] 326. Power of Three

2016-03-15 08:52 483 查看
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的乘方,题目难度为Easy。

题目限定不能循环或递归,有点无从下手,看了别人的代码才豁然开朗。int范围内3最大的乘方数是3^19,即1162261467,所以只要是1162261467的因子即是3的乘方。具体代码:class Solution {
public:
bool isPowerOfThree(int n) {
return n>0 && 1162261467%n==0;
}
};另外还有人用log10(n)/log10(3)是否是整数来判断n是否是3的乘方,大家可以自己实现下看看。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  leetcode