Power of Three

https://leetcode.com/problems/power-of-three/

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,看最后的余数是否为1,要注意考虑输入是负数和0的情况,参见代码如下:

解法一:

bool isPowerOfThree(int n) {while (n && n % 3 == 0) {n /= 3;}return n == 1;
}

题目中的Follow up让我们不用循环,那么有一个投机取巧的方法,由于输入是int,正数范围是0-231,在此范围中允许的最大的3的次方数为319=1162261467,那么我们只要看这个数能否被n整除即可,参见代码如下:

解法二:

bool isPowerOfThree(int n) {
return (n > 0 && 1162261467 % n == 0);
}

最后还有一种巧妙的方法,利用对数的换底公式来做,高中学过的换底公式为loga(b) = logc(b) / logc(a),那么如果n是3的倍数,则log3(n)一定是整数,我们利用换底公式可以写为log3(n) = log10(n) / log10(3),注意这里一定要用10为底数,不能用自然数或者2为底数,否则当n=243时会出错。现在问题就变成了判断log10n / log103是否为整数,在c++中判断数字a是否为整数,我们可以用 a - (int)(a) == 0 来判断,参见代码如下:

解法三:

bool isPowerOfThree(int n) {if(n < 0)return false;double re = log10(n) / log10(3);return ((int)(re) - re == 0);
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/242772.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DCASE 2013任务1(声学场景分类)参赛作品相关信息

本文资料来源于DCASE 2013以及上面下载的各个参赛组的技术报告&#xff08;应该就是扩展摘要&#xff09; 参赛者及其作品&#xff1a; 注意&#xff1a;图中的参考文献[46-56]就是对应的参赛者提交作品的技术报告&#xff08;也就是扩展摘要&#xff09;。 &#xff08;1&…

空间谱专题06:宽带信号处理思路

作者&#xff1a;桂。 时间&#xff1a;2017-09-09 20:04:22 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/7413139.html 前言 目前分析的问题&#xff0c;仍然限定在布阵的环节&#xff0c;暂不涉及后处理及硬件实现。 一、宽带处理的一般方式 前面分析的阵列信号模…

定时任务调度:crond任务调度

定时任务调度&#xff1a;crond任务调度 可以先写一个脚本&#xff0c;在调用这个脚本

DCASE 2017声场分类任务描述——数据集及基线系统

前言DCASE 2017继续通过比较使用公共可用数据集的不同方法来支持计算场景和事件分析方法的开发。 声音带有大量有关我们日常环境和身体事件的信息。我们可以感受到我们所在的声音场景&#xff08;繁忙的街道&#xff0c;办公室等&#xff09;&#xff0c;并且识别出各种声源&am…

空间谱专题07:干涉仪仿真思路

作者&#xff1a;桂。 时间&#xff1a;2017-09-09 20:35:57 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/7499247.html 前言 主要验证信道化前后&#xff0c;测向的有效性。相比空间谱的思路&#xff0c;干涉仪需要的信息更少&#xff0c;从干涉仪入手进行分析&am…

统计学习概论

统计学习的定义统计学习&#xff08;statistical learning&#xff09;&#xff1a;关于计算机基于数据构建概率统计模型并运用模型对数据进行预测与分析的一门学科。统计学习也称为统计机器学习。 统计学习的特点特点 统计学习以计算机机网络为平台&#xff0c;是建立在计算机…

空间谱专题08:相位模糊

作者&#xff1a;桂。 时间&#xff1a;2017-09-09 22:54:36 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/7499647.html 前言 阵列信号估计中&#xff08;空间谱&#xff09;的相位模糊&#xff0c;与干涉仪、波束形成的相位模糊有所区别&#xff0c;空间谱更测重导…

Linux磁盘分区,挂载

Linux磁盘分区&#xff0c;挂载 保存退出&#xff1a;wq

空间谱专题09:阵列信号建模方法

作者&#xff1a;桂。 时间&#xff1a;2017-09-11 22:22:57 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/7507616.html 前言 干涉仪、空间谱或者基于Beamforming的信号接收&#xff0c;都会面临窄带&#xff08;或连续波-点频&#xff09;、宽带的问题&#xff0c…

比幅测向及圆锥效应

作者&#xff1a;桂。 时间&#xff1a;2017-09-19 05:15:59 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/7549461.html 一、比幅测向原理 以三波束比幅为例&#xff0c;其中轴线角度分别为 则天线n与左右相邻的天线波束可表述为 分别取对数运算&#xff08;L、R原…

兔耳效应

作者&#xff1a;桂。 时间&#xff1a;2017-09-19 06:17:41 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/7533286.html 前言 兔耳效应&#xff08;double-pulse effect / rabbit-ears effect) &#xff09;主要指矩形脉冲信号能量将扩散到与真实载频所在信道相邻的…

下雨天我叫了顿外卖,就成了人渣?

-1-前几天深圳受台风的影响&#xff0c;大部分地区都下起了暴雨&#xff0c;计划去欢乐谷耍一圈的行程也跟着泡汤&#xff0c;只能呆在酒店。到了饭点&#xff0c;外面还在下雨&#xff0c;缺乏预防台风的经验&#xff0c;头一天晚上忘了买零食备用&#xff0c;没办法只能叫外卖…

Linux网络不可用(Linux网络设置)

Linux网络不可用&#xff08;Linux网络设置&#xff09; 出现如下情况时 首先进行问题排查 在终端输入 ping www.baidu.com 如果能够ping通则可能是Firefox没有配置好&#xff0c;配置一下自动连接网络即可。 如果ping不通则可能就是虚拟机网络配置问题。 解决方法 &#x…

子空间分析方法

作者&#xff1a;桂。 时间&#xff1a;2017-09-19 20:44:54 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/7554200.html 前言 空间谱中的MUSIC借助了子空间的思想&#xff0c;梳理一下子空间算法。 一、信号模型 假设观测矩阵A含有观测噪声&#xff1a; 定义相关矩…

空间谱专题10:MUSIC算法

作者&#xff1a;桂。 时间&#xff1a;2017-09-19 19:41:40 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/7553746.html 前言 MUSIC&#xff08;Multiple Signal Classification&#xff09;算法通常用来进行到达角&#xff08;DOA&#xff0c;Direction of arriva…

磁盘情况查询

磁盘情况查询 注意需要在联网的情况下

人可以拒绝任何东西,但绝对不可以拒绝成熟

-1-九月上旬&#xff0c;一改往年的酷暑&#xff0c;连着下了半个多月的小雨&#xff0c;再加之身体上的不适&#xff0c;心情也跟着沮丧。时光如白驹过隙&#xff0c;一眨眼的功夫&#xff0c;自己已经成了大四的老腊肉。少了一点大一时的天真和懵懂&#xff0c;多了一点老成与…

你必须足够强大,这个世界才会更加公平

图片发自简书App-1-年初时写了一篇文章&#xff0c;名为《年轻人该如何提高眼界&#xff0c;摆脱思维局限&#xff1f;》那时候&#xff0c;我认为比起一个人看待世界的广度&#xff0c;“眼界”更应该是我们看待世界的深度。当时&#xff0c;我把这样的本领称为“眼界”&#…

Linux网络配置原理图

Linux网络配置原理图 会发现你的Linux系统的IP和你的主机IP是在同一个网段 设计主机名和hosts映射