题目描述:
给定一个Excel表格中的列名称,返回其相应的列序号。
例如,
A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28 ...
示例 1:
输入: "A" 输出: 1
示例 2:
输入: "AB" 输出: 28
示例 3:
输入: "ZY" 输出: 701
解题思路:
进制转换问题。类似于将26进制数转化为10进制数。
AC代码:
class Solution {
public:
int titleToNumber(string s) {
int iRet=0;
for(int i=0;i<s.length();i++)
{
iRet+=(s[i]-'A'+1)*pow(26,s.length()-i-1);
}
return iRet;
}
};