【LeetCode-342】Power of Four
2016-04-20 15:34
411 查看
这是上一篇文章的升级版本,这是一解题的思想
# -*- encoding = 'utf-8' -*-
__author__ = 'MG'
import math as m
class Solution(object):
# 最low的一种解法了
def isPowerOfFour1(self, num):
"""
:type num: int
:rtype: bool
"""
if num < 1:
return False
temp = m.log(num,4)
if temp == int(temp):
return True
else:
return False
# 整除的方法(不符合这道题要求,这道题不允许循环)
def isPowerOfFour2(self, num):
if num < 1:
return False
while num % 4 == 0:
num = num / 4
return num == 1
def isPowerOfFour3(self, num):
if num < 1:
return False
# 前面一个条件是2的幂的判定方法,(4的幂,1在奇数位上)
return num & num - 1 == 0 and num & 0x55555555 == num
# -*- encoding = 'utf-8' -*-
__author__ = 'MG'
import math as m
class Solution(object):
# 最low的一种解法了
def isPowerOfFour1(self, num):
"""
:type num: int
:rtype: bool
"""
if num < 1:
return False
temp = m.log(num,4)
if temp == int(temp):
return True
else:
return False
# 整除的方法(不符合这道题要求,这道题不允许循环)
def isPowerOfFour2(self, num):
if num < 1:
return False
while num % 4 == 0:
num = num / 4
return num == 1
def isPowerOfFour3(self, num):
if num < 1:
return False
# 前面一个条件是2的幂的判定方法,(4的幂,1在奇数位上)
return num & num - 1 == 0 and num & 0x55555555 == num
相关文章推荐
- 进程间8种通信方式详解
- 读书笔记—View的工作原理
- 常用端口号及对应服务
- java基础笔记之static
- 邮件被暴力破解邮件网关如何解决
- 全面解析Linux数字文件权限
- Android LruCache源码详解
- Redis+Spring缓存实例(windows环境)
- Python 解析base64数据到opencv图像
- 为什么必须是final的呢?
- NHB网络心跳丢失的模拟过程分析
- 模态跳转过后,依然有导航栏
- 第四周—求n的阶乘
- 『引』最全前端资源汇集。
- iOS 学习笔记七 【博爱手把手教你使用2016年gitHub Mac客户端】
- iOS 开发之使用safari对webview进行调试
- HTTP状态码介绍
- spring只是一个框架
- ERROR:Simulator:861 - Failed to link the design
- Lambda的使用与实战