leetcode with python:168. Excel Sheet Column Title

题目:

Given an integer columnNumber, return its corresponding column title as it appears in an Excel sheet.

example:
A -> 1
B -> 2
C -> 3
Z -> 26
AA -> 27
AB -> 28

给定一个数,回传它在excel表示行数的规则中是如何表示

有点像26进位的fu,但由于没有0的存在,所以处理方式有点不太一样

class Solution:    def convertToTitle(self, columnNumber: int) -> str:        ans=""        while columnNumber>0:            temp=columnNumber%26            if temp==0:                temp=26            ans=chr(64+temp)+ans            columnNumber=(columnNumber-temp)//26        return ans

设立一个while迴圈,不断%26,//26
不过要特别注意当%出来的值为0时其实是代表26(Z)而不是0
所以需要将其转成26
接着透过ASCII编码的规则将元素放入欲回传字串
最后要//26前需减去temp,防範当上一位数为Z时,这位数会多算1(因为Z其实会拿走一个26)
最后执行时间19ms(faster than 99.92%)

那我们下题见


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章