首页 > 其他 > 详细

[LeetCode] Power of Three

时间:2017-07-22 23:30:12      阅读:339      评论:0      收藏:0      [点我收藏+]

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的幂,则这个数a的所有的约数都是3的幂,如果一个数b小于这个数a且是3的幂,则这个数b一定是a的约数。所以找出3的最大的幂,然后用这个数对n取余即可。

class Solution {
public:
    bool isPowerOfThree(int n) {
        return (n > 0 && 1162261467 % n == 0);
    }
};
// 55 ms

相关题目:Power of Two

相关题目:Power of Four

[LeetCode] Power of Three

原文:http://www.cnblogs.com/immjc/p/7222997.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!