您的位置:首页 > 编程语言 > Python开发

[leetcode: Python]504. Base 7

2017-05-18 17:57 148 查看
Given an integer, return its base 7 string representation.

Example 1:

Input: 100
Output: "202"


Example 2:

Input: -7
Output: "-10"


Note: The input will be in range of
[-1e7, 1e7]
.

实现七进制

方法一:68ms

class Solution(object):
def convertToBase7(self, num):
"""
:type num: int
:rtype: str
"""
s = ''
if num == 0:
return '0'
sig = 0
if num < 0:
num = abs(num)
sig = 1
c = 0
while num:
num, c = divmod(num, 7)
s = str(c) + s
if sig == 1:
return '-' + s
return s


方法二:56ms

class Solution(object):
def convertToBase7(self, num):
"""
:type num: int
:rtype: str
"""
if not num:
return '0'
ans=[]
sgn='-' if num<0 else ''
num=abs(num)
while num:
ans.append(str(num%7))
num/=7
return sgn+''.join(ans[::-1])


方法三:36ms

class Solution(object):
def convertToBase7(self, num):
if num==0:
return "0"
res=''
n=abs(num)
while n:
res=str(n%7)+res
n//=7
return res if num>0 else '-'+res
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: