刷到了这一道简单难度题
https://leetcode-cn.com/problems/excel-sheet-column-title/https://leetcode-cn.com/problems/excel-sheet-column-title/
粗看就是一道进制转换题不过容易掉坑里。
首先略讲一下进制转换,
以701为例,该数字可以转换为以下形式:
1-26分别代表A-Z,使用 chr(65+x) 可以很容易将数字转换成符号,
不过看到这里该题非常坑B的地方已经很明显了:
用简单除余只会得到0,不能得到26,虽然也可以用条件判断不过这里可以将该公式转换成
每次循环的时候先除以26,得到的数-1再进行除余这样可以保证得到的数是0-25,分别代表A-Z
num = 701 string = '' while num: num -= 1 val = num%26 num -= val num = int(num/26) print(val) string = chr(65+val) + string print(string)