★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/)
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/9757245.html 
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

Given an integer, write a function to determine if it is a power of three.

Example 1:

Input: 27
Output: true

Example 2:

Input: 0
Output: false

Example 3:

Input: 9
Output: true

Example 4:

Input: 45
Output: false

Follow up:
Could you do it without using any loop / recursion?


给定一个整数,写一个函数来判断它是否是 3 的幂次方。

示例 1:

输入: 27
输出: true

示例 2:

输入: 0
输出: false

示例 3:

输入: 9
输出: true

示例 4:

输入: 45
输出: false

进阶:
你能不使用循环或者递归来完成本题吗?


232ms

1 class Solution {
2     func isPowerOfThree(_ n: Int) -> Bool {
3         //递归
4         if n <= 0 {return false}
5         if n == 1 {return true}
6         return (n % 3 == 0) && isPowerOfThree(n / 3)
7     }
8 }


224ms

 1 class Solution {
 2     func isPowerOfThree(_ n: Int) -> Bool {
 3         var threeInPower = 1
 4         while threeInPower <= n {
 5
 6             if threeInPower == n {
 7                 return true
 8             }
 9
10             threeInPower *= 3
11         }
12         return false
13     }
14 }


228ms

1 class Solution {
2 func isPowerOfThree(_ n: Int) -> Bool {
3     return n > 0 && 1162261467 % n == 0
4   }
5 }


256ms

1 class Solution {
2     func isPowerOfThree(_ num: Int) -> Bool {
3         return num > 0 && (Int(pow(Double(3),Double(19))) % num == 0);
4     }
5 }

转载于:https://www.cnblogs.com/strengthen/p/9757245.html

[Swift]LeetCode326. 3的幂 | Power of Three相关推荐

  1. leetcode 326. 3的幂(Power of Three)

    目录 题目描述: 示例 1: 示例 2: 示例 3: 示例 4: 进阶: 解法: 题目描述: 给定一个整数,写一个函数来判断它是否是 3 的幂次方. 示例 1: 输入: 27输出: true 示例 2 ...

  2. leetcode326. 3的幂 如此6的操作你想到了吗

    给定一个整数,写一个函数来判断它是否是 3 的幂次方. 示例 1: 输入: 27 输出: true 示例 2: 输入: 0 输出: false 示例 3: 输入: 9 输出: true 示例 4: 输 ...

  3. 4的幂(Power of Four)

    题目描述: 在网上看到一个特别棒的思路,在这里记录一下. 思路: 如果使用循环或者递归的话,此题就容易许多,如果能整除,就一直整除下去,直到不能整除,判断是不是1即可. 不使用循环的情况,是4的幂一定 ...

  4. java位运算求幂,程序员必学:快速幂算法

    前阵子,有小伙伴在我B站的算法教程底下留言 小伙伴们有任何疑问或者希望我解说任何内容,都可以在我的小我私家B站或民众号(xmg_mj)留言哦,我会尽我最大能力.只管抽时间去写文章\录视频来回应人人. ...

  5. SQL函数之数学函数:ABS,PI,POWER,RAND,ROUND,SQUARE, SQRT,三角函数的用法

    数学函数 ABS函数(取绝对值) --ABS(绝对值)函数 SELECT ABS(-5) AS '-5的绝对值', ABS(0) AS '0的绝对值', ABS(5) AS '5的绝对值' PI(圆周 ...

  6. oracle 次幂函数,excel幂函数-Excel如何进行乘幂运算,开方运算,比如9的6次幂,10000开4次方...

    在日常工作中,经常会使用到乘幂运算,比如计算正方体的体积,需要3次幂运算,那在Excel中,如何进行乘幂运算呢? 乘幂运算 比如,底数为9,进行6次幂运算 方法1 =9*9*9*9*9*9 这种方法适 ...

  7. 【面试】手写Power()函数【C++】

    题目:给定一个函数原型,要求实现该函数并且不能使用库函数也不考虑大数问题 函数原型: double Power(double base,int exponent): 代码: #include < ...

  8. Excel poi API基础教程!

    原文转子: http://blog.csdn.net/yellowd1/article/details/44628701 登录 | 注册 yellowd1的专栏 目录视图 摘要视图 订阅 程序员12月 ...

  9. PL/SQL常用方法汇总

    在SQLPLUS下,实现中-英字符集转换 alter session set nls_language='AMERICAN'; alter session set nls_language='SIMP ...

最新文章

  1. VC 单文档程序 隐藏程序及任务栏图标
  2. LeetCode 583. Delete Operation for Two Strings--动态规划 DP--Java,Python,C++解法
  3. opencv-python将一个视频切成n份视频
  4. it is likely that the remote side declared peer gone on this jvm
  5. 【转】 Android新特性介绍,ConstraintLayout完全解析
  6. 【效率】NB,真PDF神处理工具!
  7. java计算数组均值
  8. [css] 使用css实现彩虹的效果
  9. 那些高曝光的Annotation(@ComponentScan、@PropertySource与@PropertySources、@Import与ImportResource)
  10. 断路器之一:Hystrix 使用与分析
  11. 软件测试面试题 背完面试没问题 亲测
  12. mysql数据库内连接和外连接的区别
  13. JAVA导出txt文件
  14. matlab设置保存图像分辨率_matlab saveas 分辨率
  15. Android快速开发之appBase——(1).appBase介绍
  16. 电脑游戏测试cpugpu软件,【七彩虹GTX760评测】七彩虹iGame760烈焰战神规格介绍-中关村在线...
  17. 服务器上pdf文档无法删除,怎么对PDF文件进行编辑,PDF怎么删除空白页
  18. processOn在线制图工具
  19. 基于西门子S7-1200PLC的步进电机控制
  20. JS获取本地IP显示隐藏IP

热门文章

  1. Python视频编辑库:MoviePy
  2. cookie 跨域问题
  3. 【HDU 1711】Number Sequence(裸KMP算法)
  4. 每天一道LeetCode-----链表排序,要求复杂度在O(nlogn)
  5. 反转链表—leetcode206
  6. python boxplot pvalue_1.1.1数据质量分析Python boxplot,111,箱,线图
  7. 第一章 PX4-Pixhawk-程序编译过程解析
  8. 拆分字符串使唯一子字符串的数目最大
  9. linux命令-- pstack命令(跟踪进程栈)
  10. 计算智能-群智能算法-粒子群算法matlab实现