leetcode 504. Base 7(python)

424 阅读1分钟

描述

Given an integer num, return a string of its base 7 representation.

Example 1:

Input: num = 100
Output: "202"	

Example 2:

Input: num = -7
Output: "-10"

Note:

-10^7 <= num <= 10^7

解析

根据题意就是将十进制数字转换成七进制的数字字符串,正负号还要保持一致。思路很简单,如果是 0 直接返回 '0' ,否则在保证正负号相同的情况下,循环执行将 num 对 7 取模,并将 num 除 7 的操作,以得到七进制的每位数字。

解答

class Solution(object):
    def convertToBase7(self, num):
        """
        :type num: int
        :rtype: str
        """
        if num == 0:
            return '0'
        flag = True
        if num<0:
            flag = False
            num = -num
        r = ''
        while num>0:
            m = num % 7
            r = str(m)+r
            num = num//7
        if not flag :
            r = '-' + r
        return r
        	      
		

运行结果

Runtime: 12 ms, faster than 98.00% of Python online submissions for Base 7.
Memory Usage: 13.4 MB, less than 42.00% of Python online submissions for Base 7.

原题链接:leetcode.com/problems/ba…

您的支持是我最大的动力