
正文
leetcode 算法 Excel表列序号 python实现
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示

这道题给我感觉就像一个26进制数一样。
A 就是1 B是2 。。。。 Z 是26
如果AB 两位,那就是 1 * 26 + 2 就是A 的数值*26 + B的数值
如果是MNP 三位数 那就是 M * 26^2 + N * 26^1 + P *26^0
就这样。。
class Solution:
def titleToNumber(self, s):
"""
:type s: str
:rtype: int
"""
sum = 0
li = [ord(i) - ord("A") + 1 for i in reversed(s)]
for i in range(len(li)):
sum += li[i] * 26**i
return sum if __name__ == '__main__':
s = Solution()
print(s.titleToNumber("ZY"))







