# 171. Excel Sheet Column Number

进制转换：A（N进制） ==> B（M进制）

* 从大位数到小位数：\
  每访问一个位数，累计结果都需要 \*N，再加上该位数n本身在M进制的值\
  例如 ABC：0\*26+1=1 ----> 1\*26+2=28 ----> 28\*26+3=731

```python
class Solution:
    def titleToNumber(self, s: str) -> int:
        result = 0
        for i in range(len(s)):
            result *= 26
            result += (ord(s[i])-ord('A')+1)
        return result
```

* 从小位数到大位数：\
  每一位数n都代表 (n在M进制的值) \* (M的n-1次方)，把每位数代表的值相加\
  例如 ABC：1\*(26^2) + 2\*(26^1) + 3\*(26^0) = 731

```python
class Solution:
    def titleToNumber(self, s: str) -> int:
        result = 0
        for i in range(len(s)):
            result += (ord(s[i])-ord('A')+1) * (26**(len(s)-1-i))
        return result
```
