leedcode 10进制转换成26进制

10进制转换成26进制  A对应0:(正常的情况)

复制代码
class Solution:
    def convertToTitle(self, columnNumber: int) -> str:
        mydict = {}
        # 创建字典,映射数字到字母
        for i in range(1, 27):
            mydict[i] = chr(ord('A') + i - 1)
        print(mydict)
        res_list = []

        # 将数字转换为字母
        while columnNumber > 0:
            res_list.append(columnNumber % 26)
            columnNumber = columnNumber // 26

        print(res_list)
        ex_list = [0] * len(res_list)
        for i in range(len(res_list)):
            ex_list[i] = mydict[res_list[i]]
        ex_list.reverse()
        res_str = ''.join(ex_list)

        return res_str


# 测试
s = Solution().convertToTitle(columnNumber=28)
print(s)
复制代码

 

 

10进制转换成26进制  A对应1:

复制代码
class Solution:
    def convertToTitle(self, columnNumber: int) -> str:
        mydict = {}
        # 创建字典,映射数字到字母
        for i in range(1, 27):
            mydict[i] = chr(ord('A') + i - 1)
        print(mydict)
        res_list = []

        # 将数字转换为字母
        while columnNumber > 0:
            res_list.append((columnNumber - 1) % 26 + 1)
            columnNumber = (columnNumber - 1) // 26
            
        print(res_list)
        ex_list = [0] * len(res_list)
        for i in range(len(res_list)):
            ex_list[i] = mydict[res_list[i]]
        ex_list.reverse()
        res_str = ''.join(ex_list)

        return res_str

# 测试
s = Solution().convertToTitle(columnNumber=28)
print(s)
复制代码

 

posted @   Junior_bond  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示