Lintcode:763. Hex Conversion

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Cold__Winter/article/details/79844966

题目:

Given a decimal number n and an integer k, Convert decimal number n to base-k.
注意事项
1.0<=n<=2^31-1, 2<=k<=16
2.Each letter over 9 is indicated in uppercase

翻译:

给定一个十进制数n和一个整数k,将十进制数n转换为base-k。
注意事项
1.0 <= n <= 2 ^ 31-1,2 <= k <= 16
每个大写字母9用大写字母表示

样例:

Example 1:
Given n = 5, k = 2
return “101”
Example 2:
Given n = 30, k = 16
return “1E”

就是一个。。。进制转换。。。

class Solution:
    """
    @param n: a decimal number
    @param k: a Integer represent base-k
    @return: a base-k number
    """
    def hexConversion(self, n, k):
        # write your code here
        jin = ['A','B','C','D','E','F']
        l = []
        a=0
        if(n==0):
            l.append('0')
        while(n>0):
            a = n%k
            if(a>=10):
                l.append(jin[a-10])
            else:       
                l.append(str(a))
            n/=k
        s = ''.join(l)
        return s[::-1]

大概这样,第一次的时候忽略了n有可能等于0的情况

猜你喜欢

转载自blog.csdn.net/Cold__Winter/article/details/79844966
hex
今日推荐